Home

I am a software engineer at Uber, working on a large scale highly distributed systems with Python and Golang.

My interests are in distributed systems, software engineering and architecture, programming languages, engineering culture and effective teams.

About me

I am a software engineer at Uber, working on a large scale highly distributed systems where reliability is paramount. I’ve been working with different programming languages and technology stacks since 2010, ranging from C#, to Objective-C on iOS, to Java, JavaScript, Python and Golang. Prior to joining Uber, I’ve worked in VMware with huge enterprise customers with on private cloud solutions and developer experience.

I believe in engineering done right: in good architecture design and well crafted code focused on solving the customer’s problems. I always nurture good peer code review practices in my teams: reviews that enure correctness and robustness before everything else and then go above and beyond to improve the overall system design and code health.

I also teach C++ and OOP in my alma mater – New Bulgarian University.

If you want to get in touch – LinkedIn would be my preference.

Blog

Code Reuse – the Good, the Bad and the Ugly

Recently, I had a very intriguing conversation around reusability, team independence and self-contained services. Since I’ve been reading about this in the context of microservices and modern immutable infrastructure, figured out it is an interesting topic for a post. There are a number of practices and technologies claiming to solve the problem with dependencies by …