Recently, the good sports over at Experts Exchange jumped into email banter with me about what they perceive as "booming" tech skills for 2017 - and what they view as stale. They have a big field to draw on; their 500,000 member community of tech specialists informs their views.
So let's rundown what Experts Exchange COO Gene Richardson passed along to me, and also where I challenged him. Hint: it has do to with his projected "boom" in low-code jobs.
"Tech jobs that will be outdated in 2017"
Richardson passed along two jobs he says will be "outdated" this year.
- Standalone or single tech jobs - where you only understand one role of a technology job. I.e., if you are a software developer - and don’t understand how to run well formed SQL commands and evaluate if there is a optimal way to run them - then your days may be limited. Another example is if you don’t understand how your code affects the performance of the system or page load for the user.
- Traditional System Admin positions in SMB’s - as more and more migrate to cloud services, they won't need the services that the sysadmin performs.
My view: I agree with point one, though I think a narrow approach to tech has been out of date for quite some time. In The 2016 enterprise skills debate – specialist or generalist? I advocated for specialization, but there is a point where tech skills become too narrow. I also agree that cloud SMB trends (smaller businesses) mean less need for in-house admins. But if those admins go up-market - and work with a big picture view - they will find plenty of work from companies that need someone to tie the pieces together.
Here's how I framed the big picture view:
The same goes for technical professionals, who are dealing with a devops convergence. Developers might have a Java skills base but also be savvy with Ruby and/or Python etc. Systems admins/DBAs might have a deep expertise in Oracle or SQL Server, but should be expanding into NoSQL, Hadoop, etc. The bigger picture might include understanding analytics trends – actually deriving value or decision support from the data - or perhaps agile project methodologies. For developers, the bigger picture might include a go-to-market grasp that include agile/design thinking, UX design and/or working with diverse teams.
"Tech jobs that will boom in 2017" - AI, machine learning and... low-code?
Richardson's tech jobs "boom" for 2017 includes the usual AI and big data suspects, but also some semi-surprises:
- Machine learning/artificial intelligence
- Big data
- Full-stack developers
- IT security
- Low-code development
I'm not a fan of "boom" language. I see steady growth in most of these areas, but not a "boom." I do think we've reached a high level of demand for certain flavors of data scientists. The problem: it takes years to pull together the industry, advanced math and programming skills data scientists need.
I worry when I use "boom" language that I could mislead an aspiring young developer, or someone who is desperate to move into a better job market. I don't want to give them the impression that it's easy to get hired for these roles. So I'll settle for "steady demand" in my language.
That caveat aside, here's Richardon's italicized definition for each, followed by my blow-by-blow response. I'll save low-code for last, since that was my biggest surprise on the list.
1. Machine learning/artificial intelligence – "Technology has evolved such that decision systems and algorithms are used now to make deterministic decisions on real-time data rather than a programmer writing a lot of if/then/else scenarios. Technologists specializing in building AI based products will do well in the years to come."
Hard to argue with that one. I'd just add that algorithmic approaches, workflow automation and bots will not just be a specialization, but tools in most developers' tool kits.
2. Big data – "Massive amounts of data is now easily available for analysis to make business decisions quicker. Every industry from marketing to finance to policy makers are hiring for data analysts that can make informed quantitative decisions."
True - though I think it's not just data volume, but the ability to make sense of a variety of data, including external data sources and IoT/sensor type data. Again, these analytical and data processing skills will apply to a variety of roles - not just specialists. A smaller group will need to truly grasp the architectural/integration issues of large scale data, including cloud-based data lakes.
3. Full-stack developers – "No longer just the software developer only experience but ones that also understand the dev-ops role, design, QA, DBA, analytics, etc. and how to wear multiple hats. Having full stack developers on staff improves time to market, minimizes costs and provides the team with a better understanding of the business problems and how to solve them."
I like that phrase "full stack developer" - it dovetails pretty well with what I said about big picture skills.
4. IT Security - "Thanks to high profile breaches from Yahoo! to the DNC, cybersecurity is becoming a major focus, with all companies that have any sort of digital footprint needing to hire-up in this area."
Agreed - I've written that security has become a board-level concern. Denis Pombriant recently published a relevant piece, Is security the next big cloud app? I'll have another full article on cybersecurity soon. I've become a believer we need to think about designing-for-security and designing-for-privacy from the first iteration of product design. Yes, we'll need security experts around the design table. All tech pros will need some security know-how.
Has that low-code thing really arrived?
Let's start with Richardson's definition:
5. Low-code development - "Individuals who are building apps using low-code app development tools, have the skills to help accelerate software delivery."
I struggled a bit with this one. I do see an increased need for visual modeling tools, and empowering business users to build some basic apps. But I'm not sure I see the low-code movement as a huge factor in 2017. It was the one job on Richardson's list I quibbled with. Is low-code a job? Or is it a tool business users need to pick up? Am I too hung up on a limited "visual modeling" or "process modeling" view of low-code?
Or, as I wrote to Richardson, "If you guys are seeing a lot of low-code action, I'd love to hear some examples. I see it as a trend, but more of a slow burn than the others on the list."
I actually think it has already taken off. We have probably just used different terms up until now or not thought of it as low-code development. But areas like IaaS, SaaS, PaaS, etc. are the name of the modern tech game.
For example, productive businesses build apps today by combining services, API's, etc. from two or more companies. They will get their network, storage and servers from one, their software from another, their billing/payment system from another, their monitoring from another, and so on. They will look for interfaces that can pull that all together for them, so they can point and click.
Another example is when an SMB needs to bring up their website or their personal online store, they will use ("low-code") tools like WordPress, Shopify, WuFoo, etc. that has templates to bring your site up in just a few hours. These also have plugins you can add to add additional services to your site.
So, if a company is going to keep pace with their competitors, they will need to expand their use of low-code development apps. And, then if vendors want to have their products be used, they are going to have to keep pace by offering these tools to their customers. Already, we see some big companies doing that, like Salesforce, Amazon, Google - alongside a lot of smaller vendors such as Appian, Caspio, Kony, Mendix and others. Mobile app development tools also seem to be expanding.
Richardson is right - it depends on your definition of low-code. I was looking at low-code as business users developing apps from scratch and putting them into production, with minimal or no support from IT (including no IT-supported testing). I don't see much of that yet, despite the overbearing hype from some. But Richardson is using a broader definition that includes assembling and activating pre-built services.
Heck, I can probably set up a Wordpress site. I just never thought of it as low-code, nor as a career path. But I get the point. I'll sign onto this broader view of low-code as a trend, not as a boom. And: less of a specialized job than a capability. Just don't use the phrase "citizen developer" around me, as one PR person did recently - unless you want to see me blow a fuse. That term I cannot abide.
I always find tech skills discussions limiting. Yes, we need tech virtuosos, but what we really need is tech-savvy business people, and business-savvy techies. We need bridge communication gaps and keep expectations in line with what's possible - and what the business needs. I'll leave you with my thoughts on how soft skills change tech careers:
It is no longer enough to be a tech or software specialist. Those software specializations need to be wrapped in so-called “soft skills,” which in turn are often wrapped in an industry specalization (e.g. media, telecomm, oil and gas). “Soft skills” seem fuzzy at first. But they are anything but soft. Soft skills are about bridging gaps with business and IT and speak a common language of outcomes and results. You now need an iterative ability on software projects.
That means working alongside business users – and even customers and suppliers outside the enterprise. We can talk about happy phrases like lean, agile, and design thinking, and all three have things to offer. It’s really about building things that matter and solving problems – not just delivering specs with your head buried in a cubicle.
I'll pick this up soon with more views on tech/digital skills demand in 2017 - feel free to share your views.
Updated 5:00 am ET, January 11 with small tweaks for reader clarity.