CTO Perspective: June 2021
“We haven’t seen many technical advances this year. Everyone is simply bouncing back from the pandemic and getting their s*** together.”
Technology and trends are constantly evolving, and it’s essential to stay in the know. To help you do this without too much mental energy, we recently had a conversation about today’s technology landscape with Devetry CTO, Allan Wintersieck. Here are his thoughts on this summer’s opportunities and threats to technology businesses.
“What are the biggest challenges you see?”
Finding and retaining technical talent.
If you’re hiring right now, you have probably experienced this, but it’s important to understand why it’s happening (and why it won’t get better). It’s mainly due to how technology advances.
Generally, there's a pathway for technological advancement:
- Jobs are performed manually by people.
- Specialized researchers tackle advancements.
- Once the advancements are solidified enough, specialists abstract everything out and make it easy for general software engineers to implement.
Take drones for example:
- Drones and UAVs weren't viable for most things (at least in the private sector) due to cost and technical feasibility.
- Companies like DJI advanced the technology so well that it's feasible for broad use cases.
- To actually build solutions for these use cases, companies primarily don't need super-specialized people, because the specialist companies (DJI) abstract everything out. Now, jack-of-all-trades software engineers can implement. So, in terms of jobs: you don't end up with a massive need for a specialist "drone engineer," you just end up with more need for general software engineers.
It’s less of “jobs are being replaced by robots” and more of “jobs are being replaced by software engineers.”
This same trend has happened and continues to happen, all over: robotics, machine learning, self-driving cars, and IoT. It's a consistent slope from very specialist researchers, to abstractions that allow general software engineers to implement all the logic. This leads to a job market where the need for specialists stays the same (or rises a little), but the need for general implementation engineers grows consistently to fuel implementing all this technology across every organization.
In summary: it’s less of “jobs are being replaced by robots” and more of “jobs are being replaced by software engineers.”
All these situations bring us to right now: With more demand and more options for an average developer, companies need to check a lot of boxes in order to attract and retain talent.
“Any tips for attracting and keeping tech talent?”
Generally, there are two things you need to do:
Know how many engineers you actually need. By using off-the-shelf software and keeping your custom codebase footprint small, you can reduce this number.
Attract engineers over your competitors. Generally, you should be able to check 4 of these boxes:
- Be in a cool industry
- Have cool technology
- Work-life balance
- Have a good culture (professional development)
“What are the biggest opportunities for tech companies right now?”
Again, talent. If you can out-culture your competition, you can attract a lot of talent.
Globalization of engineering talent. Because so many workers are remote, adopting nearshore/hybrid strategies is more reasonable than it was a year ago.
Web assembly. Web assembly might not make waves for “normal companies,” but I think it will be used in many common libraries and frameworks (React, d3, ThreeJS, etc.). This will cause everyone’s apps to get a little faster which leaves the opportunity to build elaborate interfaces and interactions -- things like 3D features, flashy animations, and games.
Amazon Sidewalk is also super cool. Read more on it here.
“What else are you thinking about?”
Old technology is a real hurdle for companies, both from a technical and recruiting standpoint. According to the Stack Overflow Developer Survey 2020, working on new tech is an important factor for developers.
However, those things are balanced out by the difficulty and cost of rewriting things, especially since it's almost always more disruptive and costly than expected.
So, how do you decide between these two seemingly bad ideas? I don’t have a simple answer right now, but this is something I’ll be thinking about in the coming months as the war for talent rages on.