Skip to content
Breaking
Latest technical intelligence from Northeast India • Infrastructure, AI, Cloud & Security Analysis • Precision Analysis | Raw Intelligence | Your North Star of Tech Latest technical intelligence from Northeast India • Infrastructure, AI, Cloud & Security Analysis • Precision Analysis | Raw Intelligence | Your North Star of Tech
WEBDEV

Analysis: The Trench Doctrine: A Third-World Founding Engineer's Post-Mortem

Lessons from a Founding Engineer in a Third World Country

Lessons from a Founding Engineer in a Third World Country: Insights for Northeast India's Startup Scene

Embracing Scope Creep: Keep It Simple for MVP

One of the most common pitfalls in startup development is scope creep, or the addition of unnecessary features. As a founding engineer, learning to negotiate scope is crucial to building a successful MVP. In Northeast India, where startups are increasingly gaining traction, understanding this concept can help local teams avoid costly mistakes.

The Dangers of Scope Creep

Adding features because they seem cool or might be useful in the future can lead to a bloated product that is difficult to maintain and lacks focus. In a third-world country context like Venezuela, where resources are limited, it's essential to prioritize core features and iterate as you go.

Validation and Feedback

Always validate your feedback with other users and the competition. In the Northeast region, this could involve reaching out to local businesses or tech enthusiasts for input. By seeking feedback early and often, you can ensure your product remains relevant and meets the needs of your target audience.

Proper Software Architecture: The Pareto Principle

Proper software architecture is about using the 20% of techniques and patterns that will give your codebase the results you need. This is known as the Pareto principle. For a MVP, you don't need complex mappers, aggregators, or utility classes. Instead, focus on DTOs, repositories, entities, handlers, and use cases.

The Importance of Decoupling

Software architecture aims to make the software flexible and allow for faster iteration through decoupling. Your code should not be glued together like a wall but rather a set of flexible Lego blocks you can work with. This approach will make it easier to change requirements or fix bugs when necessary.

Complexity vs. Simplicity: Choose Wisely

Complexity can be a double-edged sword, especially for startups in Northeast India. While microservices may seem like a scalable solution, they come with a significant maintenance overhead. In the early stages, a modular monolith is often a better choice, as it allows for quicker iteration and testing.

Scaling and Complexity: Find the Right Balance

Microservices should be used sparingly, once your company and products scale and you need to separate responsibilities. When deciding on your architecture, consider your DAU rate and the maintenance overhead you're introducing.

Not Everyone Will Get It: Focus on Your Core Team

As a founding engineer, it's essential to prioritize your time and energy on deep work. Surround yourself with senior engineers, CEOs, and CTOs who understand the complexities of your project. While networking is important, don't waste your time explaining basic concepts to those who aren't ready to grasp them.

Testing Matters: Don't Neglect It

Testing is crucial to ensuring a smooth user experience. In the case of a tragic launch, insufficient testing can lead to issues like users being unable to use specific characters when logging in. Always test your auth, payments, input DTOs, and access control systems through both unit and integration tests.

Academia Might Betray You: Embrace Pragmatism

While education is vital, it's essential to avoid dogmatism and develop pragmatism. Dogma is the belief that things should always be done in a specific way, no matter the situation. Pragmatism, on the other hand, is knowing when to break a specific rule while considering the trade-offs.

Breaking the Rules: Learn When to Bend Them

In some cases, breaking the rules can be the key to success. For example, instead of designing 35 tables using various NFs for MVP, it might be more efficient to use a JSONB row. By learning when to break the rules, you can save time, reduce complexity, and maintain your sanity.

Life Outside Startups: Protect Yourself First

Starting a business is a marathon, not a sprint. Protect your relationships, learn about legal contracts, human psychology, and power dynamics. Learn how to say no, negotiate, and prioritize your own well-being. Remember, equity is not free, and it should align with your future plans.

The Startup is a Medium, Not the End

Finally, it's essential to remember that the startup is a means to an end, not the end itself. Save yourself, not a company or a startup. Your own well-being should always come first. As Ging Freecs says, "You should enjoy the little detours to the fullest. Because that's where you'll find things more important than what you want."