Since the early 1990s, I’ve been watching with interest and intrigue the rapid evolution of the software industry and its developers, which ushered in the Internet age in the meantime. I’d like to share with you my observations on that subject. Because of the breadth and complexity of the related topics, I’ll chronicle them in a series of posts, starting with this one.
Up until the mid-1990s, software developers routinely created products and custom applications from scratch, hard-coding them in an imperative programming language, be it Assembly, C, C++, FORTRAN, Pascal, Java, or the like. The process typically started with IT deciding on the scope, requirements, and technology choice for the project, followed by developers taking the assignment, writing up a functional specification, and implementing it. Developers were largely coders then, with predefined responsibilities and relatively limited authority.
With the emergence of the Internet for public consumption in 1995 and rapid advances in software-engineering methodologies, computing infrastructure, and best practices for implementation since then, things have changed dramatically.
In the past decade or so, numerous robust developer tools, such as integrated development environments (IDEs), have become available, leading to intuitive, fast development of software. Many of those tools are free or open source, benefiting from vast support from the developer community and from large software vendors. In addition, the abundance of templates that are within reach have rendered building component-based software a cakewalk. Present-day developers can often start a software project from scratch and hand in a working prototype, demo ready, within hours.
Also, these days, developers have a tremendous amount of resources and power at their fingertips. For example, they can download from the Internet a library, customize it for their purpose, provision it, and deploy it instantly for a trial run. In case of success, they would then configure and integrate the software into their tooling and infrastructure environment and test it for scalability.
Simultaneously, software becomes much less complex and development cycles are getting shorter—a happy scenario for everyone.
Integration, however, often poses a challenge. A well-oiled integrated environment demands that multiple systems work together seamlessly. More and more, business managers base their purchase decision on whether the software being considered runs well with the other components in their environments, such as workflow and process automation, messaging and notifications, CRM, social media, and so on. In other words, can the software interoperate? And who can answer that question better than their own in-house developers?
That’s why seasoned developers are now the kingpin. They have the deep experience and battle scars from years of implementing complex software to determine whether things will work well for the benefit of the company.
Furthermore, the entire developer ecosystem has morphed drastically. Twenty years ago, software companies were already aware of the importance of developer evangelism, that is, the art of getting developers at potential customers on board to adopt new technologies. However, all too often, that initiative wasn’t high enough a priority to warrant the budget. Increasingly, large software vendors like Microsoft, Google, and Amazon are aware that, to make a sale, they must win a stamp of approval from their customers’ developers. And, to make money, they must rely on those folks to grease the wheel for them.
Before SaaS [software as a service] took hold of a sizable segment of the software market, vendors like Oracle and SAP sold integrated suites with hardly any stake hinging on successful deployment, raking in the bulk of the revenue up front. Not so with SaaS providers, which need customers to stay on—that is, not churn—for a long time so as to recoup their R&D investment. To begin with, SaaS products must be easy to try out and instantly deployed by customers’ developers, who act as a primary driving force behind signups.
Digital deployments nowadays are largely dominated by cloud computing, which is instrumental in enabling hassle-free technology adoption, aided by vast developer ecosystems. Scaling is paramount, too, as a business grows. As a result, developers are gaining more and more clout and it behooves SaaS providers to win their hearts and minds.
The next question is obvious: Just how do you engage with and win over developers for your software? I have tips and suggestions galore to offer, along with examples. Stay tuned for the other posts in this series.
- Part 1: The Rise of Developers and Their Paramount Role in Software Adoption
- Part 2: Developers Succeed Through Learning
- Part 3: Avoiding Pitfalls While Strategizing Promotion of Technology Adoption From the Outside In
- Part 4: Questing for Technology Adoption and Advocacy by External Developers: Their Trend Is Your Friend