About 6 months ago the startup I was working for died. It was my first job out of college and after a year and half of hard work I walked away with good friends, more experience and a little more in my bank account. I don't think you can ask for more from a job -- especially a first job.
Excluding a month break where I bummed around Argentina, I've spent the last 6 months working in-office for Rippling.
This post is a reflection of the similarities and differences between Startups and large corporate jobs and why I think startups can be an incredible first job.
In many ways my day to day life hasn't changed. I sit at a desk in front of a monitor, write software and participate in meetings. The meetings are more structured, the desk is a bit more wobbly and the monitor is significantly smaller, but it's a good life.
Beyond these surface similarities though, there are massive differences in:
My startup had 5 engineers in-total, I can't even count how many Rippling has. As a relatively junior engineer, the scope of what I work on is typically isolated to my team. I exist in the bubble that is my team and the tickets assigned to us. I have little understanding of the engineering done in the greater company.
That isn't to say that what I do has no impact. My small team is core to the company as we build and maintain our internal query language that handles billions of queries a month and powers hundreds of applications.
At PostgresML, I knew almost everything that went on in engineering. I reviewed nearly every PR, spoke directly with every engineer and had a clear and firm grasp on all our technologies.
There are a lot of really cool things going on in engineering to support the massive scale we do at Rippling, but it's harder to understand and be exposed to them. I know my area of focus very well, but I have very little surface area with any other teams.
This wall between me and the various teams is frustrating. I want to learn and grow, but I'm too busy with my team's things to expand my knowledge by seeing what other teams do.
One of the most shocking things has been how cross-team collaboration works. As an avid slack-using company it is almost too easy to just ping a team with a question on their product instead of digging into it yourself.
This is, of course, frowned on. Most teams have shockingly good documentation on how to use their products. It's in their best interest to! Better documentation means less pings from external teams.
Even when you do ping some teams, they may have an automated messages that points you to a checklist to go through before they respond. To be clear, this isn't a shot at those teams. They handle hundreds of requests a week many of which can be answered by going through their docs.
Coming from a world of quick slack huddles, learning to be more self-sufficient before reaching out has been an adjustment.
The criteria for success at a big company is fundamentally different from a startup. Because I work on the internal platform team, I work with a lot of the best engineers at Rippling. What surprised me is that the most impactful engineers aren't necessarily the ones with the deepest technical skills.
Senior engineers at Rippling vary wildly in skills and abilities but they aren't seniors because they have years of experience in various technologies, are masters of certain languages, are phenomenal at system design or understand HR software.
The most impactful engineers at a company with as much complex technology as we have are the engineers that actually know what's going on.
It is relatively trivial for an experienced engineer to come into a 5 person startup that has been working for a year, and within a month understand well how everything fits together. This is near impossible at a company like Rippling.
It has been awesome working at Rippling the last 6 months. I have a much stronger understanding of how large-scale software is written. I get to work with incredible engineers. I feel very blessed.
Part of me does miss the startup world. I miss understanding the entire product in a way that is only possible when it's small. I miss direct and easy communication. I spend more time now learning about how our internal software works than actually writing code.
But this experience has convinced me that startups are an incredible first job because they won't isolate you. You will not become a singular expert on some esoteric python library. At a startup you are forced to understand and participate in every part of the company's stack.
My advice: If you're early in your career, start small before going big. It will make you a stronger player when you eventually join a larger company. If you're experienced and considering the jump to a bigger company, know that your impact will come from patience and deep learning, not just raw technical skill.
P.S. - If you are a good engineer looking for that next step (whether from a startup or elsewhere), I can't recommend Rippling enough. We get to tackle a lot of cool problems with a lot of awesome people.
Github | Twitter | LinkedIn | Newsletter
© 2024 Silas Marvin. No tracking, no cookies, just plain HTML and CSS.