2.1.1.2 Non-technical skills
- Analytical thinking, or the ability to solve problems effectively. This involves a step-by-step approach to break down complex problems into manageable components. You might not immediately know how to solve a problem, especially if it’s something you’ve never encountered before, but you should know how to systematically approach it. When hiring for junior roles, employers might value this skill more than anything else. You can teach someone Python in a few weeks, but it takes years to teach someone how to think.
Communication skills. Real-world ML projects involve many different stakeholders from different backgrounds: ML engineers, DevOps engineers, subject matter experts (e.g. doctors, bankers, lawyers), product managers, business leaders. It’s important to communicate technical aspects of your ML models to people who are also involved in the developmental process but don’t necessarily have technical backgrounds.
It’s hard to work with someone who can’t explain what they are doing. If you have a brilliant idea but nobody understands it, it’s not brilliant. Keep in mind that there’s a huge difference between fundamentally complex ideas and ideas made complicated by the author’s inability to articulate them.
Experience. Whether you have completed similar tasks in the past and whether you can generalize from those experiences to future tasks. The tech industry is notorious for downplaying experience in favor of ready-to-burn-out twentysomethings. However, in ML where improvements are often made from empirical observations, experience makes all the difference between having a model that performs well on a benchmark dataset and making it work in real-time on real-world data. Experience is different from seniority. There are complacent engineers who’ve worked for decades with less experience than an inquisitive college student.
- Leadership. In this context, leadership means the ability to take initiative and complete tasks. If you’re assigned a task, will you be able to do it from start to finish without someone holding your hand? You don’t need to know how to do all components on your own, but you should know what help you need and be proactive in seeking it. This quality can be evaluated based on your past projects. In school or in your previous jobs, did you only do what you were told or did you seize opportunities and take initiative?
The skillset required varies from role to role. See section 1.1 Different machine learning roles for differences among roles.