HEY World,
I had read this, possibly in Hackers and Painters, long ago... and it is still applicable today. When hiring, look out for the right mix of following categories of developers.
I had read this, possibly in Hackers and Painters, long ago... and it is still applicable today. When hiring, look out for the right mix of following categories of developers.
- Engineers: They convert product specs into application code.
- Computer Scientists: They go one level deeper and prefer solving fundamental issues like algorithms, performance, memory leaks, etc.
- Hackers: They not only code well-enough but also understand the application enough to take decisions on what to build.
To this list, I would add one more category.
- Framework builders: They look at software as a collection of patterns that can be standardized and optimized.
Finally, all four developers work in a deterministic fashion i.e. 1+1=2. They know if they use certain functions most probably what would happen.
This isn't the case when hiring AI/ML developers. AI/ML developers need to take decisions with a probabilistic mindset i.e. 1+1 leans towards 2. Hence, AI/ML developers need judgement to evaluate if their code is improving or not. For example, if they are developing an algorithm to write summaries from news articles then they ought to have judgement to evaluate if the summary is improving or not.