Ever since you complete your schooling and get into a college to start your Computer Science education, you are faced with this evergreen debate for the type of company that you should work for after 4 years.
A Product-based company or a Services-based company?
Out of the 2, there is a social stigma attached with Services-based companies saying that the work there is not that much challenging and that you get paid less compared to when working for a Product-based company.
Although this might be true in some cases, that is not always the case. Having worked for a Services-based company for 2 years now, I’ve been able to debunk some of the stigmas that are associated with this type of company. In turn, I have also been able to get an opinion in this debate.
Before we begin, let me tell you how I would define a Services-based company and a Product-based company when it comes to IT. I haven’t worked in a Product-based company yet, so take this definition with a pinch of salt.
Services-based company: a consulting company that provides IT services to their clientele. They essentially architect, develop, and maintain software for an external client. For this service, they get paid from the client.
Product-based company: a company that creates and develops one or more software/hardware products and sell them in the market. They essentially architect, develop, and maintain software that they market using their own name. The people who are interested in that product pay for it and use it.
With this baseline definition in mind let us go through some of the myths associated with the former type.
Myths regarding Service-based companies
1. You don’t learn that much
This is not true. First of all, you learn something when you do anything in life, so it is not possible for someone to not learn that much when working on something every day. Secondly, it is a common misconception that you learn things only if you use every single data structure from HackerRank and HackerEarth in your day-to-day work. Some of the things you learn in a Services company are in fact different from what you learn in a Product company.
Some of these are:
- People skills
- Having a wide knowledge base
- Developing your own unique skillset (even technology-wise)
- Working on external deadlines
At the end of the day, the types of roles in these companies are still the same, as you still need architects, developers, and managed services for products that you create in a Product-based company.
2. There is no work-life balance
This is not so much related to companies being service-based. In fact, there are many product-based companies that have employees working 80-hour weeks every week. Work-life balance is therefore based on the company’s culture and also the individual.
For example, Zilker Technology, the company that I work in, has a great work-life balance. Though we have coffee machines, TT tables, and foosball tables that would tempt someone to stay late in the office, people usually don’t do stay too late. People have a great time during work hours, and then they go home to their families.
3. The pay you get is barely the minimum
This is somewhat true but not the complete truth. It is to be acknowledged that there are in fact many companies that do pay very low when compared to the market average.
In a Services-based company, as a consultant, you are essentially someone who has a certain skill set that can be used for a client project. There do exist companies that need the special skill set that you have and are willing to pay more for it. I would say, that the tough part is being in the right place at the right time.
4. Restrictions in office timings/dresscode
I am forced to not laugh at this. I studied in a college that had very strict timings and an even stricter dress code. So personally, I do not think that there would be many IT companies that require you to come to formalwear every day (unless you work in an accounting firm).
That being said, many Product-based companies do allow people to come in ultra-casual wear such as shorts and flip-flops. Though that might be enticing, the business context is lost when you take it too far. If you ask me, I don’t mind not being able to come to the office in flip-flops every day.
Pros of working in a medium-sized Services-based company
1. You interact directly with the client
Although you as a developer don’t meet with the client on a daily basis, you do have some interaction with the client regularly during Requirement gathering, design, development, and UAT. In the case of a Product-based company, say Google, the clients are usually the developers who make use of their SaaS, or the users that search for cat memes through Google Search. Apart from the analytics collected, and the forum threads there is not much interaction by a developer with the end-user. That is usually the job of a market researcher or the sales team.
2. You get to work on different technologies
One other thing that is great about consulting companies is that the things that they work on are based on the projects that come in. If a client is willing to go with a brand-new technology (say GraphQL), you as a company can develop the app using that. For a different project, they can work on a different technology. On the other hand when in a Product-based company, you might have to stick to a single technology since the company can’t keep changing frameworks every few months. Whether this is good or bad is a subjective matter so I’m letting the reader be the judge.
This post was to clear out the air that surrounds the term “Service-based company”, and I hope I did that. At the end of the day, the organization’s WHY matters when deciding if you want to work with them.
Hope you have a great day. Until next time!