Great Product Managers lead Product Development teams. To lead effectively, Product Managers must have influence and credibility with engineers. During the final round (aka onsite) interview, a senior member of the engineering team will evaluate your technical competence. Be prepared for whiteboard and coding questions at the onsite interview. Technical questions are there to make sure you will successfully work with the engineering teams. Specifically, you have to earn the respect and trust of the engineers. You have to understand the systems they build, you have to be able to field technical questions about your product when asked by other teams and companies, and more. You could be asked about architecture or design (e.g. multi-tiered web apps, data stored in databases) or conceptual questions (e.g. internet technologies and protocols), and possibly even an algorithm or coding question or two.
Contributor Background and Spotlight
Product Gym: What is your definition of Product Management?
Malcolm Paul: Product Management is defined as the activities you take to properly understand the solutions needed to either solve a problem or provide value for the client. You have to understand it from multiple perspectives, such as the end-user, technical, and business perspectives. You also have to make sure that whatever solution is put in place is the appropriate solution for that time. It might not be the right solution but if you need to get to the market quicker, that is what you have to do as a Product Manager.
As a Product Manager, you need to understand technology, organize it, and work on it with your team. Product Management to me is the process of understanding, planning, guiding and ultimately delivering as best you can from the original vision of whatever it is that you are building.
Product Gym: Have you done any Software Development in the past?
Malcolm Paul: Yes. have built APIs, chatbots, platforms, websites, including platform architecture and consulting. I have worked in Software Development for about 17 years.
Product Gym: What technical skill do you have that sets you apart as a Product Manager?
Malcolm Paul: I would like to think that I have a strict focus regarding around the user. That is not because I just care about people. Rather, it is from an actual business understanding of the implications of what we are building, and how it is going to affect the business model.
This is all natural to me, I did not necessarily have to go to a class to figure this out. This comes from my experience of serving my employees as a manager, planning tools for them and understanding what their needs are, as well as understanding how my time spent on that will affect the company. Working in startups helps because I have to understand their needs, and what I am building or what they are building will actually make sense to them.
Product Gym: What is the biggest technical challenge you have faced in a project?
Malcolm Paul: The biggest technical challenge I faced in a project was when I first started and understood how things are not magical. It was understanding how the data that I see relates to the data that is stored. If I think more recently, the biggest challenge I faced was transferring data from one platform to another and making sure that there was a one to one relationship so that users of the old system had a seamless transition.
If you go from platform A to B, the user should not care that you switched. The user should come and see exactly what it is, and so creating that kind of simple user experience was challenging. Making sure that things are simple, and that there is no major change that will affect your ability to use the software. One of the biggest challenges I have faced in a project is scoping. Getting the understanding of what needs to be done into a science, or making it understandable enough for the people I am working with. I have to communicate that to the client and make sure that it is agreed upon.
Product Gym: Do you have any favorite podcasts, blogs, or books that you would recommend to people about Product Management?
Malcolm Paul: I follow Medium and I constantly read articles. There are a bunch of books out there. If I was to teach a Product Manager something that is useful, I would suggest “The Design Sprint” by Jake Knapp from Google Adventures. It is a really good book that teaches you about how to accelerate the process of finding solutions for features in products.
As a Product Manager, your main concern is how to build your product and how to make it work. In a week, you will have to prototype it and test it out. “The Design Sprint” book really helps you go from A to Z efficiently.
Most Frequently Asked Engineering Questions for Product Management Interviews
Product Gym: What are the 3 biggest cloud web service platforms in the market and who would you say is the biggest?
Malcolm Paul: The 3 biggest cloud web service platforms are
- Microsoft Azure
- Google Cloud
- Amazon Web Services (AWS)
Everyone knows Amazon Web Services (AWS), and even if you do not know AWS, you know Amazon. Google Cloud is getting more popular than AWS, but Amazon still has the largest share of the market.
Product Gym: What does CRUD stand for?
Malcolm Paul: CRUD stands for Create, Read, Update and Delete. This is a fancy way to say that you are able to manage data in the system. When you talk about the backend portal or admin portal, if you are going into WordPress and add a post, that is literally a CRUD. It is just more advanced.
Product Gym: What is a primary key?
Malcolm Paul: A primary key is the main field in a record or a database, whether it is relational, graph or a DocumentDB that identifies an object as a unique record in the entire global set of records. The primary key is unique across all records, so no other record can have that value. My name might be Malcolm Paul, but there might be another Malcolm Paul. In the same database, we both have fields with the same name of Malcolm Paul, but my ID (primary key) might be 1 and the other might be 2. Since they are different, the primary key is meant to uniquely identify the record in the database.
Product Gym: What does GROUP BY in SQL do?
Malcolm Paul: A GROUP BY is an ordering cause for when you are selecting data from the database. Basically what a GROUP BY does is it uniquely collects records under the specific fields in a database. For example, if you want to select all of the shirts in a shirt database or shirt table that are white, you would say “select all the shirts that are white.”
But, if you want to select all the shirts that are white but then organize it by the size of the shirts, you would select all shirts from the database and group them by their size. You might have 20 different shirts with different prints on them, but in your record, it would come out as large white shirts, medium white shirts, and small white shirts. Group By allows you to group similar records for statistical analysis.
Product Gym: What is JSON?
Product Gym: What happens when you press the register button on the registration form of a web app?
Malcolm Paul: I am going to answer this from a generalized perspective.
The first step is for user-side validation. The client’s browser, the client’s app, will verify whether or not what is needed in the form is there. If not, it will prompt the user with error codes or error messages for what is wrong. The user may see messages like “Your email is needed” or “Your message is too short.”
Once that is done, it should send a validation request to the server saying “Hey, can you check that the user’s data is valid?”. The server can now do a bunch of different things. The server can say that this user is blocked because they tried to sign up fraudulently, this user already exists, or this user needs to do X or Y. It can also say that “Okay, this is good,” and the app will then send a request to register the user, or it can do it on the original request after validating it.
Then, when you return to the front of the app, it will let the app know that registration was successful. If there is an email verification, it will tell the front end to show that. If not, it will say that the user registration is successful and can log in to the account.
Product Gym: If you wanted to prevent two users from editing the same customer in a system at the same time, how would you do that?
Malcolm Paul: The simplest answer would be for you to have a lockfield on the record, and then you would show the ID of the person that is editing it. If you go to edit it and there is a lock ID there, it would mean that you cannot edit the records. If you want to get more complex, you would have versions, and you would have separate versions for that document. And as you are editing the latest version, whoever is locked the latest version would have to come back and unlock it.
Another way to answer this question would be; you put a lock on the record for whoever was editing it, and once they are done, the lock would be removed. You can implement takeover mechanisms for situations where you are admin and you want to take control of this record. Otherwise, you would just have to ask the user to unlock the record.
About Malcolm Paul:
Malcolm Paul is currently a Product Manager and Fullstack Developer at Nitm Inc (www.nitm.co), as well as the lead instructor for IdeaReality (www.ideareality.us). He studied Entrepreneurship Management at Baruch College and has experience managing teams at Citigroup and Callcentric. He was also the Co-Founder of PickedUp Inc. He enjoys combining his technical expertise with his business background to deliver and guide his own products/projects as well as his client’s.