3 ms·
I loved my first experience at an early-ish start (I was engineer 4), and it made me confident that I could create a working product with the knowledge I curren
by jjice 3y ago
I loved my first experience at an early-ish start (I was engineer 4), and it made me confident that I could create a working product with the knowledge I currently had.
My biggest negative on the engineering side was that we were almost always encouraged to neglect good, testable architecture in favor of faster releases. This lead to more production breakages and confusion about what is affected by what changes.
Since then, I've realized just how critical testing is to a system, and that it's not a "nice to have", it's a must, especially as your team doubles in size again and again.
I had a technical founder who didn't lead the engineering team always say "we need more tests" (unit specifically), while not allowing us to refactoring our codebase to actually make it testable (most of the API code was just regular PHP scripts that could span 1k+ lines of business logic, untested).
That's another thing: your technical founder of head of the engineering isn't always going to be the smartest person ever. I had that idea in my head that of course they'd be an incredible engineer since they're the one in charge, but that isn't always the case. There's nothing wrong with that either, because hopefully they're a strong leader and that matters more for their position.
I do want to say though, I've worked at other earlier stage startups that have much more attention put into design decisions and testing and it is much more my speed. I can't fathom not having an automated test suite that tests the majority of my codebase automatically to catch the little stuff that bites you later on.