Deadlines: On Being a Professional Software Developer

When I was in college I was a professional comic book writer. After numerous submissions I had several stories accepted by three independent comic book companies, all slated for publication.

I even received a $100 advance for one of the stories, with all of them paying royalties on the “back end,” meaning I’d probably wind up making $100 per story if I was lucky. And back then $100 was a lot of…no, let’s face it, even back then $100 was nothing. But I could call myself a professional comic book writer.

On Being a Professional
Which is a joke, of course, because I wasn’t a professional. I was writing in a tiny bedroom, typically from 10 at night until 2 in the morning, cranking out a short script every week or two. Sure, I had honed my skills as a writer enough to match the myriad of others trying to make it, but I was not a professional writer. And I’ve had a hard time puting my finger on what it was that distinguished me from those whom I considered “legitimate” comic book writers. It wasn’t the fact that I worked out of a small apartment. Or that I wrote at night.

It was the fact that I didn’t consistently deliver under the pressure of deadlines.

I’m sure I’ll receive a few comments saying that a professional is someone who gets paid for what they do, or someone who does something as their main source of income, or someone who’s easy to work with, or someone who comments their code. Those are some of the components of being a professional, but one of the most important and often overlooked pieces of being a professional is consistently delivering a usable product in the face of deadlines.

How Many Deadlines Must a Man Walk Down…
I knew at least two guys who were amazing comic book artists. Both drew as well as the books on the shelves, but neither could draw an entire 22-page comic in a month…and that’s what it takes to be a professional in that game.

I’m not saying if you miss a deadline you’re suddenly an amateur – the continuum is much less binary than it is fuzzy. But during your career, your present job, or the past 6 months, how many deadlines have you hit? How many have you missed?

There are going to be extenuating circumstances. There are going to be times when a third party vendor flops and the project falls apart at the last minute. And there are going to be times when the deadline is set externally and you know from the outset you’ll never hit it. But if you find that there’s always a reason you aren’t hitting deadlines you have to start asking yourself: Is it you?

I know that somewhere between 55 and 90 percent of software projects fail. Missing deadlines is easy; I could get my mom, who knows nothing about software development, to come in and miss project deadlines. Does the fact that she showed up and collected a check make her a professional developer? She’s easy to work with and comments her code.

So here is my question: during your career, your present job, or the past 6 months, how many deadlines have you hit and how many have you missed?

This isn’t a show of hands, just a gut check.

Start Small, Get Big
Growth Secrets for Self-Funded Startups. It'll Change Your Life.
What you get for signing up:
  • A 170-page ebook collecting my best startup articles from the past 5 years
  • Previously unpublished startup-related screencasts
  • Exclusive revenue-growing techniques I don't publish on this blog
"The ideas and information Rob provides should be required reading for anyone that wants to create a successful business on the web." ~ Jeff Lewis
Startups for the Rest of Us...
If you're trying to grow your startup you've come to the right place. I'm a serial web entrepreneur here to share what I've learned in my 11 years as a self-funded startup founder. Luckily several thousand people have decided to stick around and join the conversation.

For more on why you should read this blog, go here.


#1 http:// on 04.05.07 at 3:27 am

So by your classification, Douglas Adams wasn’t a professional writer…?

#2 Rob Walling on 04.05.07 at 4:00 am

Good point. In fact, your point holds for any great artist or performer: Picasso, Frank Gehry, Paul Simon, Bob Dylan, etc… A work by someone with clout can still be a smashing success and be months, even years late. Being famous, amazingly talented, or beloved by lots of people tends to get you out of things that tie the rest of us poor saps down…like deadlines. Douglas Adams was a legend and could do what he wanted because we would all buy his books even if he delievered them late. Was he a professional? Absolutely. But the same rules that apply to you and I don’t apply to Mr. Adams. In thinking more about this, success seems like a better measure of being a professional than deadlines. In some fields, such as software, part of success is hitting deadlines. In others, such as writing a book, if you’re an unknown then success means hitting your deadlines and delivering a good book. If you’re Douglas Adams success means delivering a good book, and deadlines are much less relevant.

#3 http:// on 04.05.07 at 6:41 am

I think professionals make quality products (and that quality is recognized by “users” when they pay for the products). Hitting deadlines is a component of quality. In some fields (software) it’s more important, in others not so much. My guess is it’s *very* important in fields that require large groups of people to work together.

#4 http:// on 04.05.07 at 4:50 pm

Since software engineering has more to do with inventing/researching than manufactoring/production, I would argue that deadlines is a very dangerous thing to the quality of software. Sure, we need some deliverables to keep the project going forward and avoid the student syndrome but I have seen too many hacks in the last week before a deadline to find them to be anything but unhealthy on the long term. The “we can always refactor later” just does not hold water, when managers gets to see any kind of output they immediately scream “ship it” and jump to the next version/phase in planning. So I try to provide frequent updates on my progress rather than saying “done by xxx”.

#5 Chris on 04.08.07 at 10:39 pm

Interesting, but seems like an ad hoc criteria for professionalism. Perhaps misguided deadlines are the actual culprit behind the infamous failure rates within software development project. And conversely, you might be nailing deadlines but delivering cruddy or ill-conceived product. You’re raising a broad project management question that I think is a more nuanced affair.

#6 http:// on 04.11.07 at 5:33 am

It’s so easy to miss deadlines especially if the ones setting them are non-tech people, which unfortunately, in my company is the case. Also, improper deadline estimates have a direct effect on software design and code quality.