I was reading a PriceWaterhouseCoopers article during my long West to East Coast trip to Raleigh last night. PWC warned big enterprise CIOs that their organizations are lame because they represent “slow tech,” and that all the talent wants to go work for “fast tech.” So, old line CIO, prepare to retool to go to the mat with Etsy. And good luck with that.
Instead, I want to offer a clear defense of what it means to be an enterprise software developer even as they are today and without changing a thing (even if change is always warranted).
Before I start, let’s get this out of the way: I know, quite painfully, how lame it can be to be an anonymous corporate software developer lost in a sea of cubicles buried deep in some forgotten corner of Corporate America when you disengage. I hated it with an exquisite passion, so much so much that I dropped out of the whole thing and went to law school. I met a guy today at the Red Hat Tower who shared my experience but did something much more fun: he bumped chairs in Breckenridge for a while. But you can avoid the problem and not derail your career like we did.
I believe that enterprise software developers get bigger opportunities more often than developers in almost any other context — especially with the big emphasis on “digital” these days. The bigger the enterprise, the bigger the range of opportunities. Here’s the non-exclusive list I made on the airplane:
It can be a huge mental challenge to navigate and improve the thick mesh of enterprise applications, services, domain knowledge, and the endless sea of acronyms. An even bigger challenge is how to break down all the barriers and speed bumps created by those systems.
For many software developers, shipping code is not the bottom line. If you look around for stuff on developer culture or developer happiness, you’ll run into a lot of (quite good) navel gazing pieces about how important it is for developers to be able to ship code. I get it. But the art of craftsmanship, which often gets included in the discussion, exists even in code that doesn’t ship this afternoon and it exists in places other than just code. Anyone can be a craftsman anywhere and whenever they chose to start.
In big enterprise environments, your code touches millions without much effort. Big enterprises already have the scale most startups dream of. So it’s amusing for me to read how young software developers dream of working for companies like Facebook or Google because their code could touch millions of people. Well guess what, most big enterprises deal with multiples of those numbers daily. What if you were working on code for Visa? How many lives would you be involved in? Target? The New York Stock Exchange? How many lives can you touch by just being in those environments and doing great work?
Finally, big enterprises offer something “out of the box” that’s hard to get with anything but the fastest growing startups. If you’re smart, you’re articulate, and you want to develop strong leadership skills, there’s really no better launch pad. If you’re in a company of 50, 100, or 300 thousand people there’s a lot of runway in front of you right now. If you join a startup of five, ten, one hundred people, your runway is completely dependent on the growth of the company.