This is part of our ongoing series, Perspectives in Engineering. We reached out to Jungho Kim, CTO with Architech, to discuss the emerging role of software engineering in modern organizations. Here are some takeaways from the conversation:
Software engineering is changing so quickly it’s shocking—it’s hard to believe Linux is already 25 years old! Of course, the tools and technology have changed and architectural approaches have evolved, but the common thread here has been a fundamental change in the engineering mindset.
Yet, the most significant change to our industry is how engineering is coming out to the forefront in driving business value.
In the past, executives used to think of engineering purely as a cost center. Today it’s more commonly understood as an innovation center, even in traditional organizations like banking and insurance. There’s more engineering background in executive leadership today than there has ever been.
Engineering is stepping out from the basement
Instead of being ‘the brains in the back room,’ software engineers are now the vanguard, and leading value creation across the organization. With this change, engineers are being pushed into roles which are very much business driven and customer driven. It’s a really exciting time to be a software developer.
“Building well engineered solutions is important and valuable but it’s not sufficient. Even more importantly, you’ve got to solve the right problem.”
It wasn’t all that long ago when engineers were kept out of sight and just handed specs, and told to stay out of the way and build stuff. Today, that sounds absurd.
As the role of engineering has increased in delivering value, it also increased in its reach across businesses and interactions with customers. Engineering is talking to customers directly and asking questions to make sure the right problem is being solved. In the past, this was the realm of business analysts. Today it’s oftentimes the technical lead.
All of this means that engineering has been fantastically empowered.
The Cloud: Innovation through reducing the cost of change
“What is changing — and has had a huge impact — is the move to the Cloud”
There is a quiet revolution happening in engineering that is every bit as significant as the move away from shrink-wrapped CDs to web applications. It’s a revolution in how engineering works, and how quickly change can be delivered to the end user.
While the transition to the web model has been happening for quite some time, we’re only now seeing engineering processes evolve to take advantage of this new software distribution model. Features can be shipped in days or weeks instead of quarters. Bugs can be fixed and delivered minutes after being caught. Elastic scalability through rapid provisioning of services means faster time to market than ever before.
When you can move fast, there’s incredible emerging qualities that come out for your organization. With things like “Cloud, Agile, and DevOps”, organizations are able to reduce the cost of change by an order of magnitude.
“If you can reduce the cost of change by the order of magnitude, what would you do? You would experiment more. You would release solutions more frequently. You would start to ask questions you didn’t even ask before.”
One of the emergent properties of a huge increase in speed is constant innovation. This is something that many, many organizations have struggled with historically. Now there’s technologies and capabilities and engineering practices available in a much more widespread manner to enable organizations to go down this path.
For example, we’re seeing huge innovations in the DevOps space. There’s Chef, Puppet and all the container approaches like Docker, Kubernetes and so on — a broad landscape of tools that cater specifically to development speed, and therefore push innovation.
While “the Cloud” has been around for a long time, what we’re seeing now is a maturity of the technologies & automation capabilities that enable cloud services to be the default model for deploying solutions. Today you have an entire tool chain that supports this available to every business in the world, even enterprises for which software is not their core competency.
Another area that’s taking off is cognitive analytics and services — machine learning, deep learning and artificial intelligence in general. Architech has invested in an entire practice that focuses solely on this.
Kim’s team is not just focusing on machine learning & deep learning in an academic sense; they’re focusing on how to incorporate practical levels of AI into the solutions they build.
Whether it’s a web portal, a mobile app, or an API, it’s an exciting challenge to determine how to successfully introduce intelligence.
Architech works very closely with Microsoft’s cognitive services and machine learning platform on Azure. In the end, Kim thinks that will drive how applications are envisioned. As an example, with cognitive services and capabilities, we’ll have voice as the interface. It’s going to change the way solutions are built.
Today, enterprises can afford to be pro-innovation
Prior to the web app model, engineering was about building solutions really well and validating what you’re building. If even the simplest update requires shipping a disk to users so they can upgrade (or even download an installable), it’s very important to focus on clean releases. With the Cloud and DevOps, businesses can now treat this web environment like a “persistent beta” which radically compresses time to market.
In the past, there has been tension between the engineering and product teams’ desire to move fast, and with the IT Ops preference to move slowly in order to maintain stability at all costs. Now, thanks to DevOps and modern engineering practices, their objectives can be aligned—centered on building fantastic products for their customer.
Enterprise development used to require investing millions of dollars just to try something, and tech leaders had to hope that the project worked out okay and brought the expected ROI. It was largely on faith. What’s really pushing the boundaries is the ability to get solutions out faster. This allows for faster validation and the ability to innovate more rapidly than ever before.
Now with change-positive development approaches like Agile and DevOps, there is an organizational shift happening: a stable production release is not inherently at odds with shipping great products quickly. These are all ingredients that are enabling this shift where product development, business, and marketing can all actually be on the same page.
Reducing the cost of change is transforming engineering and the way products are build.
You can feel the optimism and excitement that Kim exudes, “Watching the rapid pace of change in some of the more progressive companies we work with — change that’s supported by all departments at once — is truly amazing.”
Travis Kimmel is the CEO, co-founder of GitPrime, the leader in data-driven productivity reporting for software engineering teams. He is experienced in building high-performing teams, and empowering people to do their best work of their careers. Follow @traviskimmel on Twitter.
Get Engineering Impact: the weekly newsletter for managers of software teams
Keep current with trends in engineering leadership, productivity, culture, and scaling development teams.