About

Libélula Software is a boutique software engineering consultancy centered on architecture-first thinking and production reality. We have broad experience designing software systems and solving complex engineering problems. Our work spans the software stack, from user-facing applications to backend systems and infrastructure. We believe good software engineering is a balance of art and engineering.
Libélula Software

Background

I started my development career at Microsoft and worked there as a developer for almost 10 years. During my time there, I mostly worked on high-performance C++ server and cloud products, primarily under the Office 365 brand. I also spent some time working on the natural language processing (NLP) and machine learning (ML) teams. My responsibilities included integrating NLP features into Xbox and Windows, including the automatic extraction of calendar events from emails.

I spent a lot of time optimizing performance, which often led to less code and more simplicity. For example, I once rewrote a key hot path, improving performance by 9% and eliminating more than half of the existing code. While this is a single example, it represents a pattern I've seen repeated in my development work. The natural evolution of code is to become more complex over time, which often does not serve the stakeholders well. Understanding what a system needs to do - its actual requirements - versus what it currently does is very important. Often this knowledge leads to a design that is simpler and more performant.

After leaving Microsoft, I joined a few startups as founding engineer and/or CTO. Some succeeded and some failed. This experience taught me that the best technical solutions don't always win in the marketplace. The most technically advanced product I worked on struggled in the marketplace due in part to limited user outreach and engagement. Meanwhile, my biggest success was with a less technically sophisticated product that was loved by its users. These experiences have stuck with me, and I find myself considering the end user throughout the development process.

Libélula Software LLC was founded in January 2021 and has given me the opportunity to work with a wide variety of clients and technologies. I still specialize in high-performance server and cloud applications, but I now prioritize working on interesting problems anywhere in the software stack.

How We Work

We work with our clients to distill their requirements and carefully analyze their current system. We strive to understand the users and the business constraints, not merely the technical problems. We value working collaboratively with our clients because they have domain knowledge we don't. Together, we can often arrive at a better solution than either side could independently.

Throughout the design process, we prioritize simple solutions to complex problems. The right solution depends on the full set of constraints, not just the technical ones. We don't assume the initially proposed solution is the right one. As we learn more about the problem, our proposed solution can evolve.

Have a difficult software problem?

Tell us about the outcome you need, the current system, and the constraints that matter. You do not need a finished specification. Work can include focused architecture reviews, implementation projects, and ongoing technical guidance. We can work independently or alongside an existing engineering team.