In today’s fast-paced business environment, companies are pivoting towards product development in a big way. Product development is an exciting field for budding engineers.
But what does it take to get into the field?
Typically, the job involves an interview with hands-on problem solving and programming questions/tests. Once cleared, the second round caters to system design with data and cloud-savvy questions mapping to functional and non-functional requirements.
The third round includes leadership rounds that evaluate the candidate on growth potential, sharpness and critical thinking.
Product development organisations watch out for technical depth. Here are five skills you can pick up.
Continuous Learning
Product development engineers are some of the most sought after in the talent market. To stand out during such fierce competition, you must be truly passionate about building products. A learner’s mindset with ample curiosity can make or break the decision to hire.
Having a problem-solver mindset is an asset, especially to a product organisation where there are complex challenges each day.
Collaboration with other stakeholders will enable continuous learning and exchange of ideas. Being part of architecture and learning groups, participating in innovation summits, conferences, hackathons can also help.
Innovation
Product engineers need to have a creative outlook and constantly research new experiments. Challenging the status quo and asking relevant questions are essential to opening many creative possibilities — why not? What if? How about?
Experimentation and test-driven development are important — even if it involves failing often.
The journey of transforming ideas to high-end products requires excellence at every step — from inception, architecture choices, design patterns, algorithms, data structures and more. For example, having the knowledge and intuition to apply the right data structure or algorithm at the right time and keeping space complexity in mind is a fantastic skill
A strong foundation in system design concepts and programming is also essential
Agility, quality and security
Developing products is all about building high-quality features that dovetail with speedy execution. Organisations deliver business value incrementally where value is delivered at least every 2 weeks, and some have evolved into true continuous deployments with multiple releases per day.
This helps get early feedback to quickly adapt and meet customers’ needs. Your adaptability to change will be evaluated around functional and non-functional requirements.
Being meticulous and driving quality upstream makes you highly valued. With open-source software, cloud hosting and complex systems of batch, streaming, real-time and micro-services — test-driven development with real scenarios and data is key. Your quality automation expertise will set you apart in verifying products holistically.
You should be well versed with processes and tools around security and to detect and fix any issues proactively.
Watch out for pitfalls on some tricky questions that test your integrity and how you balance the tradeoffs. For example, what do you do when there is an urgent patch request to be delivered if code coverage or a certain vulnerability is not addressed? Being genuine and transparent will resonate with all stakeholders that will naturally build trust.
DevOps with Cloud
Most companies have been moving to cloud adoption as part of their strategy. With multiple public clouds, having good exposure in one of the cloud platforms may suffice for some roles.
Apart from strong cloud concepts, you will be required to be familiar with the DevOps process and its automation tools. Having a DevOps mindset instantly sets you apart as it gives you the edge on continuous deployment and provides a holistic viewpoint around product development
You will be probed on various phases of continuous integration, delivery, and deployment with nuances on how code and configurations move through different pipelines right from the check-in until it reaches production. Also, be wary of pitfalls on possible failure paths during deployment and learn how to fix forward versus rollback with different deployment strategies.
Data-savvy
Being data-savvy is crucial. Having experience in handling large-scale data with different tools and frameworks is expected in most product-driven organisations.
Strong data wrangling, analytics, SQL skills will give you the needed advantage to thrive in product organisations. Here, you will be required to elaborate on case studies and scenarios dealing with large scale data — either in batch, real-time or streaming with metrics around performance and volume primarily.
Be wary of different data formats, data stores and the world of databases with SQL and NoSQL paradigms with tradeoffs. This also opens how distributed computing and cloud platforms get leveraged to solve these complex data problems.
Honing these skills is not a one-time effort but a continuous learning process. But it will give you the confidence to excel in interviews and later succeed in a product development organisation. Like every new change, there will be crawl, walk and run phases to go through. Get these hacks right and you are on your way to building a successful career in product development and engineering.
(The author is the senior director of product engineering at an IT company)