Reflecting on one year of early-stage engineering


Tags: fossa

My computer science degree didn’t teach me that much about software engineering.

I remember coming fresh out of college with no clue what a Senior Software Engineer did. There was a vague sense that experience was valuable, but it was difficult for me to articulate what that meant in concrete terms.

I spent the year after that at Google. Google is a great place for new grads, because it provides a lot of structure, guidance, and examples of what good engineering management and practices look like. Unfortunately, it’s very difficult to shine in the company of tens of thousands of great engineers. Every company only has so many projects that it can take on at once, and therefore only so many roles for team leaders.

Small companies are qualitatively different from large ones. When I joined FOSSA, there was only 1 other engineer (and a technical founder, but founders spend most of their time thinking non-engineering thoughts). Over the last year, we’ve roughly tripled the team to 13 (of which 7 are engineers).

Being an engineer at a small company is more than just engineering. It also means interacting with customers, fielding support calls, participating in sales meetings, doing on-site deployments, making UI design decisions, coordinating projects, building hiring pipeline, and occasionally taking out the trash.

At the end of the day, these tasks must get done. For me, this has meant learning to wear a lot of new hats:

All on top of the usual engineering work. Thankfully, I work with a great team who hugely ease the burden.

Being an early engineer is not easy work. It forces you to grow and develop skills that you didn’t know you could, because nobody else is there to wear that hat for you. The reward is discovering that putting on new hats gets easier every time.