• I finaly got round to reading this article, after a vey long delay (it's been sitting in mt "to read" stack for the best part of a year). It's a great article. Reading it cheered me up. I wish I had read it earlier. Craig, thanks for this - it really is good. (Hey Kraig, I though you were supposed to write Evil articles, not Good ones? Or does your article quality change to match your nickname? [and if so, how do you organise to change the artcile quality for old articles when your nick changes? - or is that the problem I'm observing?])

    But there are a couple (or a couple of couples) of things in it that I don't really agree with, although mostly the disagreement is minor.

    First, the level of knowledge a level 1 (raw beginner) applicant needs. This may be a left pond vs right pond distinction. Over here, many of us are prepared to accept what we might call a "trainee DBA" or a "trainee database developer" with pretty well no knowledge at all of databases. This is partly because we know that most UK Universities don't teach anything about databases in their CS degrees (or at least, not anyting more that you could easily teach in third grade) so people with CS qualifications usually don't know anything about databases (or at least nothing practical - they may learn some abstruse theoretical stuff, but not how it fits to the real world). And it's partly because many people (including me) remember that an awful lot of Turing award winners and other CS gurus came into computing with no previous knowledge of it at all, so maybe someone with a Music degree, or a Mechanical Engineering degree, or a French Literature degree, or a Maths degree, or a Literae Humaniores degree or even no degree at all and no knowledge at all of computing can quickly become competent at computing or database design or administration (think of Ted Codd, Chris Date, Charles Bachman, Tony Hoare, Cliff Jones, and many many more). And of course because some of us remember that if recruiters had wanted knowledge of computing when we were young we would still be mathematicians (or whatever) and not computer types. So the idea that a level 1 job requires a pretty good grounding seems wrong.

    Next is your description(s) or level III - or rather stopping at level III. To me, someone who can only do half the job is nowhere near the top. If they can't combine being the guru, the guy who knows everything in their specialities with being able to motivate and steer a team they need to learn new skills. Maybe it's a level IV - but we need some people who can do both halves of that.

    Also, I think you are missing what is really the top technical level; this is the guy who is perfectly happy when he hasn't a clue how to do something, who doesn't care if he has to look things up or consult someone because he doesn't have the expertise, but also doesn't care if there's no-one to consult because no-one knows the answer, and is going to move the state of the art forwards because he is too stobborn to accept defeat. Maybe that's level V? Let's ask, was Ted Codd as a database developer what you would call level III or was he level V? Was Chris Dace level III or was he level IV or was he level V?

    Finally, I accuse you of telling people to shoot too low: Database Architect "is an end goal for a career". Surely we should encourage people to aspire to the job that combines database architect with overall application and system architect and line manager of database development (or even line manager of all development, IT, and support - there are such jobs, and if you are good you can get there, even if you are not quite good enough to reach what I called level V). Or maybe to some other job that's a bit more than database architect, even if it doesn't combine all those other things?

    Tom