Ok, What are Generalist Engineers, and why do startups need them?
Should you aim to be a generalist who can deal with various subjects competently or a specialist with this "cool" experience in a particular area?
If you ask what a generalist engineer is, that's a fair question. You might already be confused about all of the roles in the industry: front-end, backend, full-stack, DevOps, and let's not start talking about that "ninja" or "wizard" nonsense roles out there on LinkedIn, lest start with the definition that we like:
📖 Generalist: A person with broad general knowledge, especially one with more than superficial knowledge in several areas, and the ability to combine ideas from diverse fields.
And yes, this definition is extensive. As you can see, it does not include any technical engineering words; based on this description, you might think that a full-stack engineer is also a generalist, but it is not such. I believe this role only exists in small or medium-sized organizations (it depends mainly on the type of startup or company).
I come across many blogs on the internet where people criticized "The Generalist" role (Blog from companies that help large organizations to hire engineers, primarily specialists); these people will argue that you need to have a specialization in some technology; and that's ok, you can have as many as you want, but that does not prevent you from being a generalist. When we talk about this role, we are not only about technologies or if you can do backend or front-end code, that is not how you should see it. A person who fits this role will do much more than just coding; it may sound like more work but not quite.
If you come from a large organization, you know that roles are well defined, and your responsibilities might look the same no matter the organization, but this changes when you are part of an early-stage startup. In startups, you should feel comfortable making fast decisions, building something quickly, and using everything in your hands to accelerate learning. And don't get me wrong, that doesn't mean that you should write horrible code or forget about the best practices. Still, you must be wise when making tradeoffs of how you can help the organization to learn as quickly as possible and achieve product-market fit.
Sometimes it's very tempting as an engineer to want to write the code for a particular feature or part of the product that we can outsource or pay for a third-party service; an example would be the authentication system; there are hundreds if not thousands of authentication products, and yet I have talked to many engineers who are proud of how they build theirs in 3 months, 3 months in startup years is like 1 year, no kidding;]
💡 This is where knowledge of some low-code and no-code tools comes in handy; remember, you don't need to reinvent the wheel; keep that ego aside.
As a Generalist, you have to decide if it is worth building that feature or module from scratch or if paying for a service will accelerate the learning and productivity of your product team, or maybe just maybe. You don't need that feature (for now)
If your engineers are coding 100% of their time, you are wasting their full potential.
Should I be a generalist engineer?
Some companies will need specialists, and some need generalists, so the question here is what excites you and will fulfill your career goals.
If you ask me, it all depends on your type of person; if you love technical and complex things, possibly being a generalist in an early-stage startup may not be for you (this might not be valid for A.I or hardware startups 😅), but if you like to listen to users, be very close to the battlefield, build many things, and understand your startup's industry this role might be a good fit for you.
Once you've decided what's best for you, let me tell you that the title "General Engineer" is not typically used in job descriptions or posts; typically, early-stage startups are looking for full-stack engineers or just software engineers or founding engineers (we will take more about this later), so if you see a small company with a team size of around 2 – 15, you might end up being a generalist.
If you would like advice on how to land your next gig, please don't hesitate to reach out to us; we are always happy to make introductions; you can contact us on LinkedIn any time; here are our profiles: