We’re getting the chance to live in the future

Insight categories: AI and MLPerspectiveTechnology

Early 20th Century motivational speaker and author Dale Carnegie once wrote “Today is the tomorrow you worried about yesterday.” I believe that Mr. Carnegie’s point was that unless today is the literally the worst day of your life (and my sincere sympathies if it is), then the energy you spent worrying about it yesterday was largely wasted. I haven’t read much by Mr. Carnegie (who was not related to industrialist and philanthropist Andrew Carnegie by the way), but perhaps those who are staying up nights thinking about the impact GenAI might have on their jobs should take a look at his book titled “How to Stop Worrying and Start Living”. I’m not familiar with the content, but the title seems very much on target.

To give some context on where I’m coming from: I’ve spent my entire adult life developing software products—as a coder and automated test designer / developer; as an architect and (believe it or not) UI designer; as a tools automation and “DevOps” leader; as a quality and process evangelist and ‘digital transformation’ champion; as an acting “Product Owner”; in multiple Manager, Director and VP of Engineering roles; and, now, for the last 15 years, as a CTO. Also, I took on a good array of supporting roles along the way, including leading product support, IT (briefly) and tech writing. And probably other roles that don’t immediately come to mind. In other words, I’ve held basically every job in the software industry. And GenAI has the potential to change all these activities, everything that I’ve learned, almost beyond recognition: including my current job as a CTO. Also, I also believe that in some of these areas, this transformation will start to happen in the very near future—possibly this year (2024).

Like many in my “generation” of software engineers, I have a very diverse skill set—even above and beyond that litany of roles. The current generation of developers are often surprised at the range of different activities that I and my contemporaries all seem to know about—but for us, this was just routine. People of my generation generally knew how to build a computer from chips—as I knew in my early career. We had to know about CPU architectures and peripheral device controllers so that we could program in assembly language when required—which it was, sometimes. While the bulk of my career has focused on developing various sorts of application software, I have also worked with ‘system software’ such as operating systems, device drivers, the network stack, and with compilers and debuggers. In other words, I and my generation knew—and had to know—computer and software systems from the inside out, from ‘chip’ to ‘cloud’ to ‘app’.

This breadth has served me well, especially in a company as diverse as GlobalLogic. Because of the path my career has taken, and the technology changes I have lived through, I have ended up knowing a little about a lot—and that has really come in handy sometimes. I also know a lot about a few things—but in the era of change like we’re headed into, I suspect that will actually be my least valuable attribute. I think it’s my breadth and range of experiences that will serve me best in the future.

Years from now, I suspect that you will find yourself in the same position that I am today. In particular, at that future date, you will find yourself knowing things that the more junior people around you will find mystifying, because of the roles you have played, and the experiences you have had.

I predict that the next generation of software engineers coming up after you will be amazed that you know how to write code—by typing it! You know how to deploy software systems on the cloud, and how to manage a kubernetes cluster—by yourself! You can write a user story, and even test it—just from your own imagination! You can deploy incremental side-by-side canary or blue/green releases—with scripts you wrote! When the AI based system gets something wrong, you know how to get in there—and fix it! In other words, the skills you have learned and use today will give you tremendous insight into the more automated systems in the future. Your current skills will continue to be a real advantage to you as we transition to a more AI-driven style of software development, no matter how automated it gets.

The trick to thriving in a changing landscape is that you will need to do what I have had to do many times in my career: Be willing to set aside hard-earned knowledge or skills to embrace a new technology, process or role that delivers a better end result, both for yourself and for the products you build. You may think that leaving your current skillset behind makes you less valuable, but my experience is that it’s the opposite. Understanding and embracing the future is what makes you most valuable. Even when you move on to the new, what you have learned before will stay with you. While you may not do things in the same way, the context you’ve gained from your previous experience will remain useful even if, in an AI-driven future, the way you once did it becomes ‘obsolete’. I’ve found time and time again that the effort I put into doing something well has never really been wasted, even when jobs and technologies change. I think with GenAI we’ll all see the same thing.

But your current hard-won skills can be a stumbling block if you confuse the means with the end. Always keep in mind the end goal: to architect, develop, test, document or deploy a system that delivers business and/or social value; to solve a business or technical problem; or to deliver a quality product to market quickly. Then use the best means available at that time to do it, even if it means abandoning the way you’ve done it before. If you keep doing things the way you do them today, when a better way emerges, you will indeed be left behind. On the other hand, the bright side of NOT embracing the future is that maybe if you wait long enough, you could get lucky: Your old skillset may become so “retro” that it turns into a high-demand niche area. We see this when 1970’s and 1980’s mainframe developers are called back from retirement today. But if it’s true that the ‘fashion’ cycle is 40 years, the 2060’s is a long time to wait for early 2020’s development techniques to come back into style. If, indeed, they ever do. My advice is to adapt.

Because our world is changing, I think it’s legitimate for all of us to be concerned about the future. The changes we all see coming do concern you, because if you work in the software industry and related areas, your job will indeed be affected. But concern is different than worry. Concern leaves room for curiosity, excitement and action, while worry can be paralyzing. When the world is changing around us, standing still is usually not a good option. It’s much better to be engaged in the change, and to make it work for you. My advice is to be concerned, but not worried.

In the software field, all of us have begun to realize that we are part of an industry that will be disrupted to its core by GenAI. Your job will change--if not today, then in the next few years. But will your job go away? In its current form, your job may indeed change beyond recognition. But I think the need for software in the world is nearly inexhaustible. In particular, I think the demand for new or improved systems will grow faster than our efficiency at bringing those systems to production, even if our productivity increases many times over. In growth there’s opportunity. If you have a good mind and master this new technology, I think there will be a place for you.

To acquire the skills you already have today, you have learned how to learn, how to think, and how to apply technology to solve business and other real-world problems. My advice: Don’t confuse the ‘means’—what you know today—with the ‘ends’—solving a real-world problem using technology. That end goal of software development—making an impact in the real world, and in people’s lives—will not change. The need to apply technology to meet the world’s needs won’t go away. The opportunity to make a difference for yourself, your family and for society, along with the excitement of learning new skills, are probably what attracted you to engineering in the first place. Go back to your ‘roots’ about why you became an engineer—and be willing to rethink how you can now accomplish those goals in a new and even better way.

  • URL copied!