After withdrawing from ETH Zurich in a degree for MSc in CS, majoring in Theoretical Computer Science and Machine Learning, I joined a startup in pursuit of making impact, learning with practical experience, and building. Here is what I learned.

The power of dogfooding and observability

It’s much easier to come up with ideas when using the product as you feel the rough edges firsthand which promotes thinking about ways to improve it. This is similar to instrumenting what users feel, you can’t fix what you can’t see.

Good system design is quiet

Choose boring technology. Why?

  • Time is finite and market moves fast, focus on solve business problems that differentiate the problem, not reinventing the wheel.
  • Known unknowns vs. unknown unknowns - by preferring technology that is well understood with failure modes that are known, you can move faster.
  • Allows us to focus attention on what really matters.
  • Costs outweigh convenience.
  • Bake in observability so failures are diagnosable in minutes.

Speed is critical

You should do whatever you can to make all engineers ship faster. This involves:

Speed allows a faster feedback loop, faster time to market, faster learnings.

Have fun

Choose energizing problems if possible. Celebrate wins. Leave room for exploration and creativity.

Challenge assumptions

People in general, tend to draw generalizations from specific experiences. When listening, listen with intent - start from first principles, continually ask “what problem are we solving?” until it’s crisp. Separate must-haves from nice-to-haves; cut scope ruthlessly.