Switch from Service based to product based organizations

Perspectives & advice from the community

u/funnythrone on a post titled How to switch from service to product based companies for non cs background people? shared the following advice:

Switching to a product company is possible, but definitely not an easy task as there are lot of people trying to get into product companies. I have listed below the things I did. Do take it with a lot of salt as what worked for me may not work for you. Also, an interview is dependent on a bit of luck, as most companies do not have an objective way of interviewing, so it is subjective to the interviewer.

  1. Start with the basics, of data structures and algorithms. You should be able to implement the most basic data structures using nothing but arrays/Lists in your preferred programming language. And then you should be able to identify the time and space complexity of any algorithm/program using the big O notation. You should be familiar with the runtime complexities of well known algorithms, and why one algorithm might be better than another in certain situations despite big O complexity saying otherwise.
  2. Practice writing code. Studying the basics without a practical implementation of it counts for nothing. I spent a lot of time on hackerrank and hackerearth. Participating in any programming challenge, especially the hiring challenges on hackerearth. Initially I wasn't even able to finish 1 out of the 2 or 3 questions, but I soon reached a stage where I was being called for interviews.
  3. Build something on your own from scratch to end. The finished product might be trivial, but if you do the work yourself, it will help you understand how to do it. It's okay to use libraries and frameworks, because let's face it, no one will ask you to build an application at work without using any library/framework.
  4. Learn to communicate with others effectively. What this means is that you should be able to convey your thoughts to the opposite person using the least possible time. Like it or not, unless you are in the top 0.01% of engineers, you will have to work in a team and it involves communicating with your peers, juniors and seniors. A person with above average skill and excellent communication skill will be more preferable than a person with great tech skill but poor communication skill.

Source

Stories from the community