Dear Fellows,
I’m happy to share a discussion that is very close to my heart and pivotal in software development: the "make or buy" decision.
This choice is one of the first and most crucial decisions we face at the onset of any project. It's not just about choosing between creating software in-house or purchasing a ready-made solution; the landscape is much more nuanced than that.
In today's talk, I delve into various strategies beyond the basic make-or-buy options. From hybrid approaches to innovative compositions of existing technologies, I aim to unfold the layers that make this decision complex yet incredibly strategic. Whether you're a developer, a project manager, or a CTO, understanding these subtleties can significantly influence the agility and effectiveness of your technology strategy.
This discussion is drawn from over 15 years of personal experiences — the triumphs, the mishaps, and the lessons learned. I hope it sparks ideas, offers insights, and maybe even resonates with some of your own experiences in the tech world.
Join me as we explore these pathways, and let's navigate the intricate decisions that shape our projects and, ultimately, our products.
Make Or Buy –
For me, it meant 4 different ways in the past.
In the realm of software development, decision-makers often face four primary strategic options for acquiring software solutions:
Buy: Opting to purchase software quickly integrates established solutions with minimal initial development effort. This approach is most suitable for companies needing immediate functionality outside of their core competencies.
Make: Creating software in-house allows for complete customization and control over the development process. This is appropriate for organizations that possess the necessary capabilities and wish to build proprietary, complex systems from the ground up.
“Buy the Making”: Also known as outsourcing, this method involves hiring external firms to develop custom software. It offers flexibility and can be advantageous when internal resources are limited, though it requires careful management to ensure alignment with the company’s long-term objectives.
Compose: This approach involves assembling various pre-existing software components and services to create a new system. It leverages the strengths of each element while managing their integration, suitable for companies that want to innovate quickly without the burden of developing every element from scratch.
Warm regards,
Adrian
Share this post