Can 9-to-5 Developers Be Good Developers?

Bruno Skvorc
Share

Stock photo of clock indicating a ticking timepiece

For more on personal development for developers, check out this episode of our podcast, The Versioning Show, covering the three keys of being a productive software engineer.

While picking talks for the conference he’s organizing, James Titcumb recently tweeted that well known speakers get picked over others because, among other things, they’re reliable (i.e. they don’t cancel). I would argue that “among other things” carries more weight – I believe that most conference organizers pick such talks and speakers because they like to play it safe and fear risks.

A Safe Play

The number of times I’ve seen a well known name from the PHP world hold a trivial (and, on their end, too, a “play it safe”) talk is staggering, and it always makes me feel like I try too hard with my submissions. In this day and age of almost instantly-available recordings, why have a talk more than a few times? By the second or third time around, it’s accessible to everyone online anyway. Why pick “safe” topics – who are you if you don’t push the limits of your own comfort zone? Invite discussion, polarization, and disagreement – grow yourself by learning from and educating those who disagree with you, find common ground, see things from people’s various perspectives, prevent the formation of an argument from authority. Stop acting like a prophet, and instead act like a human – fallible, capable of learning, and always curious.

When your whole career is banking on being a speaker, then I suppose it makes sense to have evergreen talks you don’t need to prepare. Traveling around the world and reciting the talk from the top of your head is a pretty good gig and I can’t fault such speakers for this approach any more than I can fault McDonalds for continuing to sell hamburgers. It works. But even McDonalds introduces a salad or a chicken wing from time to time.

Then there’s also the “bubble” effect:

It works both ways, I think. Acceptance of the same speakers (indeed, I keep seeing the same 10-20 people at every conference) frightens the newer ones and prevents them from even submitting talk ideas. As if the impostor syndrome isn’t weighing down on them hard enough already, now they have to fight for scraps among themselves after those who are guaranteed to get in have picked the table clean.

These days where “diversity” is aggressively pushed on everyone, the conference world seems strangely hostile to intellectual diversity. I wish there was a conference which guaranteed at least a 90% ratio of first-time (or first-year) speakers – oh how much more interesting the conference landscape would be!

The 9-to-5

My opinions about conferences aside, this led us to another discussion where some argued* that these talks get recycled not because of speaker laziness or organizer cowardice, but because there are many attendees who have never been to a conference before and are blissfully unaware of such common topics as “What’s new in PHP7”, “Why use Composer”, “Good OOP”, “What’s TDD”, etc.

This, to me, didn’t make much sense. If an employee had never been to a conference before, and the employer is finally sending them, it’s trivial to do a Google search about the topics being presented + their speakers, and recordings of their previous talks show up. Why would an employer who knows an employee has no interest in self-improvement (obviously, since they had never been to a conference) send them to a conference that’s, for the most part, wholly available online and for free?

Granted, the conference might be the first-of-its-kind, but let’s be real – we’re talking PHP here, it’s not going to be talking about something groundbreaking.

The boss might also hope the employee will meet new people there, perhaps do some recruiting, but that’s also hardly the role for a first-timer.

All of which begets the question – what kind of developer has so little interest in self-improvement? Marco Pivetta had something to say on that:

This baffled me.

You come to work. You know your tasks. You do them. You go home and… repeat the next day? Provided it’s not exactly a job at which there’s a lot of downtime, how does such a developer keep up with best practices or new approaches to recommend to bosses in order to improve the app, or assert some leadership, advance in their career? Turns out, they don’t:

Wait, what? This is terrible.

In order to stay relevant in our field, we have to constantly keep learning. We have to actively seek out new technologies, study them, and decide whether or not they’re worth paying attention to. We need to not only assess their potential to solve future problems, but also re-solve past problems on these new potential solutions for the sake of identifying better approaches.

A developer who stops being a developer after 5 pm, especially if the job isn’t overly creative and lacks individual freedom to express oneself in solutions, will build good muscle memory, will remember the core functions and their inconsistent argument order, will be able to hammer everything into the shape of a nail and then drive that nail into anything, board or not. But that developer will never become a software engineer. That developer won’t be able to succinctly present new solutions and approaches, and won’t be able to influence the company’s growth in a good way.

Time

I understand the “No way, I’m married” or “No way, I have kids” or “My time is precious, I want to spend it one something I enjoy” sentiment Malte mentions in the thread. Time is the most precious resource we have, and with family, the value shoots up even more.

But I firmly believe we’re in a tech bubble, and money earned now will be able to buy much more time later than the time used directly right now for a ratio of 1:1. It’s all a matter of balance, of course – moderation in all things is important – but time spent on learning, improving, and setting oneself up (and I’m not saying 24/7 here, but a few hours every day amount to a lot in the long run) – especially if one enjoys it – is an investment worth making. And if you’re not enjoying learning new things about your job, what are you doing working that job in the first place?

In my opinion, you shouldn’t shy away from selling your time until you have enough money to buy more back than you sold. But you should charge a lot for it.

Conclusion

In my opinion, a 9-to-5 developer can be a good developer or, rather, a good code-monkey, but cannot be a good software engineer, or a good community member.

A developer who wants to stay relevant in the field and who wants to progress in their career simply must take initiative and learn. They need to see things long-term, and realize that unless they upgrade themselves now and get a career boost with learning, the time saved and used on “life” now will be wasted tenfold in the future, because the gains could have been high enough by then to buy much of that time back.

It doesn’t even have to be development – there’s more ways to learn than just coding past 5 pm. Read tutorials, write tutorials (and earn some more money on the side), go to conferences to meet people and hear different ideas (excellent conferences like the WebSummerCamp even have a companion program so you don’t even have to leave the family behind) – there’s a wealth of options for every ambitious developer out there.

How do you feel about conferences and recycled talks by the same speakers? How about the 9-to-5 fates? Do you keep learning after you come home, or just drop everything? What’s your end game? Discuss!

*see? Disagreement! And I, as a fallible human, learned about new reasons behind some of the conference symptoms I was seeing.