Skip to content

Just Some Kid

September 28, 2009

As of this post, I am 28 years old and I’ve been practicing web development professionally for the last 7 years or so.

Which pretty much makes me a baby.  Sure, I’ve had the opportunity to work with some really great, high profile clients and companies and they’ve paid me well for it.  But, there are folks out there that have been working in the computing field for over 50 years that have forgotten more in the last 7 minutes than I’ve learned in my whole career.  So, compared to them I’m just some young kid.

In the web development world, most of us are forced to grow up very quickly, professionally speaking. We get out of college and it’s time to find a job. A good paying job at that. Otherwise, why else would we have acquired all that debt? We never really get a chance to be young and inexperienced.

There are a couple of reasons that I can see for this. The first is primarily financial. Being inexperienced means it’s pretty hard to find someone who will take you on as a green, young developer AND pay you the kind of salary you need for those student loan bills. We’re forced to grow up because we need to pass ourselves off as an “expert.” It’s all about making money and padding the résumé so you can climb up to that next job. It may be good, well-meaning, honest work that you’re putting out there. But you shouldn’t fool yourself: no one can really become an expert in a couple of years. It takes some serious time to master this craft.

Do this for a couple of years and you might even start to buy your own hype. And that’s dangerous. Really, really dangerous. Dangerous because our egos can prevent us from learning because we don’t want to look uninformed. Especially to ourselves. No developer likes admitting that they don’t understand something.

Which brings me to the second reason: Ego.

There are a lot of people my age that we all look up to and say, “Man, that guy is a genius. He’s only 25 and he developed X framework/library/technology/masterpiece.” So we aspire to be that next wunderkind and produce our masterpiece1. And that’s great, we should be inspired by our peers. We should be trying to make the best software possible.

But, there’s danger here, too. While you’re trying to think up your killer app and prove just how clever you really are, you’re missing opportunities to learn from the real experts out there. Too often I see young developers like myself focusing on becoming well known as this week’s badass and missing the big picture.

The reality is, if you’re anything like me, you haven’t been doing this development thing anywhere near long enough to call yourself an “expert.” You might be a dedicated craftsman, but it just takes lots of time and experience to get there.

I’ve recently had the opportunity to spend time sitting at the feet of some real masters and some truly accomplished journeymen2 that I respect immensely. And let me tell you, there is nothing more healthy for one’s ego than to sit quietly and get schooled by your betters. Next time you’re at a conference, try to find the people you really respect. Then watch and listen carefully and figure out who they’re quietly sitting and listening to. And then pay attention, cus that’s the guy you’re supposed to be learning from.

It’s OK to be young. It’s OK to be inexperienced. And it’s OK to admit you don’t know how something works, even if you’ve been doing this stuff for a while.

As for me, I’m trying to embrace my naïveté, pay attention, and hope I learn something.


1 Technically, in the old guild system a Masterpiece was a work that a apprentice or journeyman craftsman created and was their test of fitness for the title of Master, giving them the right to enter the guild, start their own workshop and have apprentices of their own. http://en.wikipedia.org/wiki/Masterpiece

2 In the old guild system, the word ‘journeyman’ refers to their right to charge a fee for each day’s work. The word comes from the French word journée, meaning the period of one day. http://en.wikipedia.org/wiki/Journeyman

Advertisements
7 Comments
  1. Awesome post. As a 30 year old lone developer (who's always worked solo), and is expected to have all the answers, it's nice to know that someone else is feeling the same way 😉

  2. Mat Schaffer permalink

    Well said, man. This definitely flies in the face of every job description I've never seen, but that's probably a good thing. I'm looking forward to the next posts and hope to hear your thoughts on why “solo” or “masterless” is such a common case for developers and what it might take to get people thinking about software more like traditional crafts.

  3. Mark Turner permalink

    @Matt Darby +1. Excellent post.

  4. voxdolo permalink

    Great post Kevin. Looking forward to the rest of the series!

  5. kfitzpatrick permalink

    Thanks for the feedback, guys. Stick around for the rest of this series over the next 4 weeks.@Mat S: I'd love to see job descriptions say things more like “professional craftsman” rather than “expert.” And I'm definitely thinking of a post addressing the solo or masterless craftsman out there and how we can “apprentice” even within our current culture without going back to step one (highschool/college grad apprenticeship).

  6. joshkaufman permalink

    Excellent first post, Kevin – looking forward to the rest of the series!

  7. Trust me, it's not just you, and also not just those who are truly “solo”. I think nearly everyone I know who takes this profession seriously feels the same way. For those of us that think that way it's an odd paradox we're in because our employers may hold us in very high esteem as experts, when in fact that renkown means jack squat to us personally because we know the vast chasm of knowledge that exists between ourselves and those that *we* consider experts…As stated in the post it's also difficult to figure out where to go from that situation. Once you're at a point where you're making good money, maybe have the house/wife/kids/dog, how do you go back to that square one? Assuming you can even find a place that values the craftsmanship mentality that is willing to take you on as an apprentice / journeyman it seems unreasonable to expect them to pay you at the same rate you are making at a company that already considers you an expert. So maybe the only way once you're in that situation is to hang onto your day job and be the informal apprentice to those you respect. That's certainly the approach I've been attempting, but that itself can be difficult given a full time employment + family commitments. Craftsmanship takes lots of blood, sweat, and tears, which is something I'm certainly not against. Just wish I could get a little more of it done during my daytime hours!I think we as a profession really need to take a hard look at how our educational system is failing us in this regard… Maybe rather than classroom environments, a large part of formal education for software engineers should be apprenticeship. Best thing I did for myself in college was doing 1+ years of internship. Formalizing that process would take a large scale collaboration between craftsman shops and universities the likes of which I don't see happening anytime soon.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: