Working for FAANG and for a start-up

Roman Marakulin
5 min readDec 1, 2023

--

I consider myself lucky to be able to work for companies of different sizes. As a software engineer, I’ve worked for companies of a wide range of sizes: from a tiny 10-person start-up to a giant company (one of FAANG) with tens of thousands of developers.

When you work for a start-up for several years and move to a much bigger company (or vice versa), the first time you feel uncomfortable and out of your place, as processes and time to market are unlike (as well as your mindset should be).

In the article, I want to highlight the main contrasts between working for FAANG and a small company and what working for FAANG means for me.

There is no single answer, to which company to work for. The article aims to help people who start working in a completely different environment and struggle to share the company's pace and culture.

Company growth

Start-ups have to be quick in decision-making processes. While a big company focuses on maintaining its brand and improving the experience for the current customers, the main goal of a start-up is to find such customers. Solutions can be dirty and written on the knee. The purpose is to experiment with the market and find a sustainable model and growth points. Start-ups should be quicker, much quicker, growing faster, some day to get ahead of giants.

It influences, what work you do as a developer largely. Working for a start-up, your main goal is to grow business metrics, such as purchases, active customers, etc. All work you do is evaluated directly through those metrics. Your influence is seen on a company-wide level — it motivates, but at the same time you feel the pressure and responsibility.

Speaking about FAANG-like companies (but, of course, not only about them), people are obsessed with quality. There is a popular saying in Russian: “Seven times measure cut once”. If you are this type of person — you are in your element there. Every project has to be well-measured and fully tested before going to production. Deep testing is an important aspect, as any project has to be scaled to millions and billions of customers and not disappoint the audience. A single project’s influence is negligible for the whole company, but on the bright side changes, that you do daily can be seen by a much bigger audience (although, the change itself is tiny). On the other hand, there are more politics, a project can be canceled or suspended and it’s not rare. Just take as an example Google or Meta or any other big company and remember how many projects were closed before reaching customers. Working here, you should be prepared to abandon the current project and to be transferred to a more urgent one.

Responsibilities

At a start-up, your title is just an anchor. In reality, you have to combine skills from multiple roles and be proactive. You are responsible for the whole project or a large part of it and it’s your responsibility to find the right tools, technologies, and people to drive and progress, whereas in a big company, you are highly specialized and do limited work.

There are advantages and disadvantages on both sides and depends on what is your personality — you would prefer to develop in breadth or in depth. But, personally, for me, start-ups are great as a starting point for a career. You can try yourself in various roles and decide what is closer to you.

When I worked for a startup, although I was hired as a software engineer, I did several machine learning tasks (from experiments to productionalization) and at some point I was even a traffic manager, working closely with company partners.

At FAANG-like, the SDE role means exactly engineering and you don’t have such luxury – there are plenty of other people who do the rest of the project full-time. For instance, for our current project, Applied scientists develop a model, Machine learning engineers productionalize it and SDEs facilitate and bring the whole project together.

In terms of experience, focusing only on specifics allows you to sharpen your knowledge, and be aware of possible corner cases and linked limitations, whereas a start-up forces your mind to evaluate the risks of the unknown and do only what is necessary for the business.

Organization

At FAANG there are strict meetings and processes. It reduces freedom, but structures teams and gives visibility to managers and other team members what is the current status of the project. Small companies to a certain degree replicate those ceremonies, but processes are much more chaotic.

For example, at Amazon, there are multiple document templates, that should be written and verified by a certain number of people within any project development. These templates reflect knowledge, that was gathered during the company's history, and learned from mistakes.

In that sense, working for a start-up you and your team decide what processes to have. At my previous company for about 2 years we haven’t had daily stand-up meetings at all (if you work in IT, you definitely know what it is).

Career growth

No one will mind, that the growth in any company is subjective. IT companies are not an exception.

When working at a start-up, the only person, who supports your promotion is your manager, having some data points, such as increases in business metrics, that can be visible from the top of the whole company with objective business metrics.

On the other hand, at FAANG, the process is strictly structured and every developer has to push for the promotion. With many developers under one manager and the competitive environment, the whole process becomes an activity, that can easily take up to 10–20% of your productivity. Your manager, other managers, peers have to approve your promotion, based on data, that you prepared and provided structurally. The process makes sense, as it tries to objectify your performance, but it comes with this overhead, that could be used to develop products.

Summary

Personally, for me, these are two completely different worlds. FAANG companies give you stability, an opportunity to be the best in a highly specialized field, and time to learn. Working here is an internal competition, a challenge to stand up for yourself.

Whereas a start-up motivates, associates you with a product, and concentrates on business metrics and how to achieve more with less. You feel ownership and responsibility for its future — every success is your success and every failure is also your responsibility.

--

--

Roman Marakulin
Roman Marakulin

Written by Roman Marakulin

I write about Technologies, Software and my life in Spain

No responses yet