Salaries



  • The idea for this new thread came from reading the "Career In Programming" thread. I just had to create another thread because what I'm about to reveal will send shockwaves through the DailyWTF. I know it shocked me.

    When was the last time you checked out a job site like Monster.com? Have you noticed the salaries being offered? It had been a couple years since I had even glanced at Monster.com, and I was flabergasted at what I saw. Looking at the VB.NET and C# positions made my mouth drop. For just 2 years of experience, you can make from $90K-$150K. And this is not contract stuff either. We're talking permanent positions. I had to stop looking at the site, because, well, honestly I don't make $100K and I've been developing for years.

    Does everyone who reads the DailyWTF make 100K annually? If so, how does it feel?



  • Man.

    That's completely out of control. Managers really have no idea, do they?


  • ♿ (Parody)

    Lies, damn lies.

    The job market right now is an employee's market -- there are far more jobs than programmers these days. When this happens, the head hunters get really competitive and do what it takes to get you to respond to the ads that they are placing on Monster.com and every other job board.

    Read the ads closely and, if the recruiter has any shed of dignity, they'll read minimum 2 years and up to $150k. Now, there's some truth in that: someone with two years might get that job and the employer may be willing to pay that much for a superexperienced programmer. But there's no intersection of the two.

    Now, on to who makes six digits. Your profile doesn't indicate where you're from, but in major metro markets (esp. west coast), a Programmer III is often right in that range. In smaller metros (like Cleveland), six digits generally don't come until Programmer V or manager. And these figures assume the employer is like most: a large, boring, non-IT company. Drop 10-20% if your employer is smaller and more fun (like a shoftware shop).

    You seem to already know this, but a full-time contractor with several years of experience should be making atleast 100k -- if he's not, his agency is screwing him. Cleveland rates are $60-80 hour (120k-160k/yr) -- I think major markets are $100-$140/hr, but I don't have as good of a pulse on them. Anyone know?



  • @Alex Papadimoulis said:

    Lies, damn lies.

    The job market right now is an employee's market -- there are far more jobs than programmers these days. When this happens, the head hunters get really competitive and do what it takes to get you to respond to the ads that they are placing on Monster.com and every other job board.

    Read the ads closely and, if the recruiter has any shed of dignity, they'll read minimum 2 years and up to $150k. Now, there's some truth in that: someone with two years might get that job and the employer may be willing to pay that much for a superexperienced programmer. But there's no intersection of the two.

    Now, on to who makes six digits. Your profile doesn't indicate where you're from, but in major metro markets (esp. west coast), a Programmer III is often right in that range. In smaller metros (like Cleveland), six digits generally don't come until Programmer V or manager. And these figures assume the employer is like most: a large, boring, non-IT company. Drop 10-20% if your employer is smaller and more fun (like a shoftware shop).

    You seem to already know this, but a full-time contractor with several years of experience should be making atleast 100k -- if he's not, his agency is screwing him. Cleveland rates are $60-80 hour (120k-160k/yr) -- I think major markets are $100-$140/hr, but I don't have as good of a pulse on them. Anyone know?



    Ah, but these are gross incomes for those who are freelancing/self-employed?

    No 'ordinary' code monkey on a payroll can make 100K/year and $70/hour. That's absurd.

  • ♿ (Parody)

    @dhromed said:

    Ah, but these are gross incomes for those who are freelancing/self-employed?

    No 'ordinary' code monkey on a payroll can make 100K/year and $70/hour. That's absurd.

    Quite a many "ordinary" code monkies make an absurd amount of money as a contractor on the payroll of a contracting company. The billing rate for contract labor (in Cleveland market) is $80 - $100 per hour -- what the contractor nets is entirely up to the contractor.

    I've known guys who were paid $40/hr ($80K/yr) but were billed out at $85/hr -- obviously they're being ripped off. When I take contracts, I don't let the contractor skim more than $20 off the top.

    Making that money comes at a price -- work isn't steady (though, these days, it's plentiful) and you're often time treated as a second class citizen ("just a contractor") by management who, ironically, you're making more money than.



  • For what region are you seeing these kinds of offers?

    I can see these salaries being somewhat realistic if the jobs are in NYC or San Francisco or something, where the cost of living is pretty high...



  • I sure don't.
    'Course, I'm still in college, out on an internship at just over 35k a year.
    That still feels pretty good.
    :)



  • @dhromed said:


    Ah, but these are gross incomes for those who are freelancing/self-employed?

    No 'ordinary' code monkey on a payroll can make 100K/year and $70/hour. That's absurd.


    Currently such prices seem unreasonale (at least here in Austria), but around 1998-1999, it was difficult to get less.
    Y2K+EUR+.com-enoughpeople = $$$$$

    Here in Austria, prices are at 40-50 EUR/h for contract work (hiring the contractors directly or from a small company); in a permanent job, an experienced developer typically earns around EUR 40-50K/year.



  • these are making me pretty optimistic... hopefully things don't change or get better in the next 4-5 years...



  • @n89j said:

    these are making me pretty optimistic... hopefully things don't change or get better in the next 4-5 years...

    At least in my country, things currently get better. Much better. I think this is because many companies replaced their systems in 1999, to avoid the Y2K problems; now these replacements are 7 years old, nearing the end of their life cycle.



  • No, I don't make 100K.  I find the idea that I would be making 100K... absurd, to put it mildly.

    I'm working for a fairly large company as a programmer at <
    35k/year.  No one would hire me before into a programming position, as
    it was around 2002 and there were just too many other programmers that
    had more experience than I did.  Even here, I wasn't hired as a programmer: I took
    that on almost by accident, later.  Since then, I've simply been writing code and gaining experience.

    Y'know, maybe I should actually start looking around again.  If 2-year .NET people are making that much, surely I can find a job writing C++, perl, Edify or Java for more than I make here.  Or, even bone up on my C# [I've written a few basic things, but certainly not enough to call myself experienced.  I've just never had a need.]


  • ♿ (Parody)

    @TheDauthi said:

    I'm working for a fairly large company as a programmer at < 35k/year

    ...

    maybe I should actually start looking around again

    I'd say! Even if you don't have a degree, if you've got a few years of experience you should be doing much better ... even if you do live in Mississippi ;-)



  • @TheDauthi said:

    Y'know, maybe I should actually start looking around again.  If 2-year .NET people are making that much, surely I can find a job writing C++, perl, Edify or Java for more than I make here.  Or, even bone up on my C# [I've written a few basic things, but certainly not enough to call myself experienced.  I've just never had a need.]

    C#/.NET is in the aughts what Java was in the 90's. Learn it. Love it. Be it. You are C#'s bitch, so you might as well enjoy it! [:D]



  • (It wouldn't let me quote prior messages?!?!)

    Eh, this just goes to show what whiny, bitter ranting I'll write when I don't have caffiene in my system yet, but since I've started... (off the original topic)

    I've really not found an overwhelming reason to learn C#, yet, other than it's manager friendly.  I come from a heavy unix (linux, BSD) background, and still use that a great deal, and didn't really learn to admin a windows system until recently.  The framework isn't everywhere I want to run windows code, and a lot of what I do write is either somewhat low-level  (C++: I use memory-mapped-files a lot, and other companies' libs) or glue between systems (perl: I've written several CTI and 3270/MQ modules in XS recently).  In C++, I have the ability to get to modify the actual allocator when I need to (which is rare, but when I want it, I really want it), which I didn't see in C# (though it might exist, I didn't look carefully).  I also use the functional aspects of many languages far more than I should (boost::bind/function, generators, Higher Order Perl), and haven't seen many of those capabilities used in C#.  I mean, it seems like it contains some nice libraries, but... I guess I don't get it yet.  Maybe some project that it would be a nice fit for will come along and I can see why it's so popular... I assume it's popular for a reason, though some of that popularity is probably marketing momentum.

    As for my salary, which was the original topic that I digressed from... I'm looking.  I have been, off and on, for some time.  I'm not disappointed with the current state of things: this was my first real job and I have no degree (so I needed the experience, especially the paper)... and I'm far more interested in doing Stuff I Find Interesting than I am the money.  I'm in this field because I enjoy designing and building things.



  • @TheDauthi said:

    I'm far more interested in doing Stuff I Find Interesting than I am the money.


    Rationalization perhaps?

    I've heard them all...

    "I'm getting great experience here..."
    "You can't find this work environment anywhere else..."
    "I just love the people I work with..."
    "The commute gives me time to learn a new foreign language..."

    Meanwhile, you're driving 2 hours to (and from) your job, literally paying to go to work (read: high gas prices), making $30K/yr. (or less) ... just to get "experience"... with "new technologies" (like HTML) .. work in a "great environment" ... and interact with "wonderful people".

    I'm not saying that your reasoning is wrong, I've just been-there-done-that and it's not worth sacrificing your health, safety, and sanity (not to mention paycheck) playing the martyr.

    No one is going to pat you on the back in 5 years and say "Good job. You suffered through. Now we're going to miraculously bump up your pay to $90K." You may be fortunate to receive an increase in salary on your present job, although (shocker!) companies are in no way obligated to give you a raise. (I know, that sucks. I've been there too.)

    The bottom line is, money is important. Don't try to act like it isn't. You need to live. You need food. Decent food. And a decent place to live. Don't shortchange yourself. If you're experienced and have done the work, you deserve it.

    Why play the martyr when all the other programmers are making $90K-$150K, laughing it up, and playing golf in their elite neighborhoods?


  • ♿ (Parody)

    To add the counterpoing, money isn't everything. I've walked away from a *very* generous salary at quite possibly the least stressful job ever.

    Of course, the reason it wasn't stressful was because there was no work that was done. As neat as it is to be paid (highly) for doing nothing, there's no satisfaction in that, and there's no sense spending 10+ hours of your day earning a fat paycheck to live for the other 6 hours.



  • @Alex Papadimoulis said:

    To add the counterpoing, money isn't everything. I've walked away from a very generous salary at quite possibly the least stressful job ever.

    Of course, the reason it wasn't stressful was because there was no work that was done. As neat as it is to be paid (highly) for doing nothing, there's no satisfaction in that



    IMO a very wise decision. Spend too much time in such a job, and you will go gaga. It's very hard to get a reasonable new job if you have spent the last 5 years with surfing the web and reading newspapers. And well, even if it's comfortable now, almost every organisation goes through some kind of downsizing sooner or later, and chances are they will downsize the idle people first.




    , and there's no sense spending 10+ hours of your day earning a fat paycheck to live for the other 6 hours.



    Well, if the time is right, IMO it makes sense to spend some years making truckloads of cash, especially if you are young and need the money.


  • Is this in California?  I am in Dallas and a couple years experience will get you 70 maybe.  I have 10 and I am under 100.



  • @CPound said:

    Why play the martyr when all the other programmers are making $90K-$150K, laughing it up, and playing golf in their elite neighborhoods?


    Because I fuckin hate golf, I fucking hate elite neighbourhoods and I fucking hate having too much money too spend?

    Let 'em laugh.



  • @dhromed said:

    @CPound said:
    Why play the martyr when all the other programmers are making $90K-$150K, laughing it up, and playing golf in their elite neighborhoods?


    Because I fuckin hate golf, I fucking hate elite neighbourhoods and I fucking hate having too much money too spend?

    Let 'em laugh.


    not all programmers are making 6 figures. I would have to say (from what I know (which isn't much)) that on average they make less.  however, anyone that says they hate having to much money is just plain fucked in the head.  ever heard of investment?  heard of charity?  heard of putting money away for your kids/grandkids/nephew or whatever to go to college?  if you are making 30K a year in the US with more than 3 years of experience you are probably not a good programmer...  or not a good employee (two very different things).



  • according to the cost of living calculator, what I make now is equal to 80k in san francisco and 95k in NY.  is that good?  Before I took this job I interviewed for a position with a company in NY and the range was 60-70, which I thought was pretty good, but I guess it wasn't.



  • I've been a software developer since 1989 and have never had a job that came anywhere close to what the salary surveys said I should have been making.  I suspect they're made up BS, or as one poster suggested, the headhunters make those claims in order to get resumes.  Companies will do everything they can to pay you as little as they can get away with.  The only way I've ever gotten more than 1% - 3% yearly pay raises was to change companies.  Now, with about 17 years of experience in a steadily growing career, my salary is just shy of $90K.  I'm happy here, though and in no hurry to get more raises or promotions.  The highest-paid employees are also the first to be laid off, doesn't matter if they're star players.  (The realities of the corporate world really do suck.)



  • @jetcitywoman said:

    Now, with about 17 years of experience in a steadily growing career, my salary is just shy of $90K.


    17 years to get to $90K?!?

    Shame on you!



  • Hey, it's been a nice steady gig.  Some small companies, some large corporations, some local government.  I've only been out of work in my whole career for about 4 months.  So I've been very lucky in that regard.

    If my pay is lower than average, I don't know why unless it's because I'm female.  Or maybe I'm not aggressive enough with salary requirements when starting a new job.  I've only felt like I had a good sense of my market value for the last couple of jobs.  My first full time programming job was paid $19K/year.  After the first year the company was forced to do a comparison of their employees with the local area's average salaries and they had to give me a $5K/year increase.  Other than that, just piddly increases for exemplary performance.  As I said, I've always gotten the best pay increases by jumping ship.



  • ♿ (Parody)

    I suspect that your sex may have a small to do with it -- 75 cents on the dollar i believe is the price of being female. No less, it is surprising to see a female programmer with with 17 years experience -- I've read that most end up in management.

    And you're right -- jumping ship is pretty much the only way to get large increases. But, by doing that, you lose all the relationships and capital that you've built up over the years at a job. And that can be hard to walk away from. A lot of times, it isn't even worth the 20% pay increase.



  • I agree.  I should say that I don't jump ship at the drop of a hat, though.  I do stay as long as I'm learning stuff and benefitting the company, and only quit when it becomes apparent that I'm no longer doing either.  (I love listing percentages or dollar figures in savings or revenue next to each company on my resume.  It really bowls over an interviewing committee!)  Of course in this day and age, even if you WANTED to be a "lifer" at a company, so many companies do so many re-orgs that everybody eventually gets "down-sized".  I've heard of so many people who have been downsized time after time, and you sure don't build up any relationships or capital that way either.

    BTW, recently I've been hearing that people have been forced to take pay cuts if they want to be employed.  Has anybody here experienced that?  That's a really good way to screw up a career path.  Ugh.



  • @tster said:

    @dhromed said:
    @CPound said:
    Why play the martyr when all the other programmers are making $90K-$150K, laughing it up, and playing golf in their elite neighborhoods?


    Because I fuckin hate golf, I fucking hate elite neighbourhoods and I fucking hate having too much money too spend?

    Let 'em laugh.


    not all programmers are making 6 figures. I would have to say (from what I know (which isn't much)) that on average they make less.  however, anyone that says they hate having to much money is just plain fucked in the head.  ever heard of investment?  heard of charity?  heard of putting money away for your kids/grandkids/nephew or whatever to go to college?  if you are making 30K a year in the US with more than 3 years of experience you are probably not a good programmer...  or not a good employee (two very different things).

    Long post below, and it's going technical, as I do when I'm tired.

    Before I begin, I should admit to both that I should probably make more, and that my justification for staying as long as I have is at least partially simply as CPound said: justification.  I do find it irritating that you immediately make one of two assumptions, where there are actually several possibilities, one of which is that I have a logical reason for being exactly where I am. 

    Unfortunately, I do not disagree with one of them: I am a bad employee.  If I am not working on something vaguely interesting, I generally end up at work about 30 minutes late.  While this is partially due to long-suffering insomnia, that problem is greatly exacerbated when I am bored at work.  I do work longer hours to make up for this, but that does not make me a 'better' employee.  I also spend periods of time during which I am designing and not actually writing code, either away from my desk or reading a technical manual at it.  A large portion of my work actually consists of designing ways around problems and talking to the business side of the company.  I also spend some time each week learning what is going on in our business: instead of letting my manager tell me what I need to be doing [which is arguably what I should be doing], I go and look at and try processes and spend time thinking of ways to make them better.  I sometimes miss morning meetings, have the social aptitude of a beached whale, and sometimes tend to linger around a certain redhead's desk.  So far, the work I've done has paid off well for the company I work at, so they've let me continue.  But I digress.

    However, while I admit that it is only rationalization, there is a strong rationalization for being where I am.  First, make the assumption that I do not have my degree and that I do not have the experience to justifiably show to a managerial-type that I know what I'm doing.  Second, assume that the boredom that I show on 'un-interesting' projects is the worst of the characteristic behaviours which I demonstrate [this comes from my management]. From these two simple postulates, it can be shown that my decision to remain where I am is good for some period of time t. 

    The first theorem is that if I continously demonstrate those behaviours at a company at which I am 'making license plates', I would be terminated within 6 months.  The second is that it is difficult to find a job in which I am either not displaying those behaviours [the work is interesting] or that doesn't mind that I display them occasionally so long as I get work done.  [Current situation is both: they let me solve things my own way, and dump a lot of projects at me.]  The magnitude of difficulty changes based on the healthiness of the job market: the difference in time between the prior job and the current one was almost one year, but I would assume it would six months in a more stable market.  Now, assuming a t of one year, I can either work at one job at full pay for, say, six months, then spend six months looking for work [which is a gambling approach] or I can work one job for that year at a reduced price and make approximately the same money. 

    Furthermore, the latter approach has other benefits: the magnitude of difficulty of finding a new job that meets my requirements is not constant, but rather a function f(x,e) that is primarily dependant on my industry experience [t-dependant!] and education, as well as a bunch of other factors: the desisty of jobs [Jackson is a very poor place to start from], money-on-hand [moving expenses, failure expenses], cost-of-living, etc.  Add in my (recently decreasing) social reticence [a large factor] and some other social factors [family, friends, until-recently-girlfriend], and my behaviour makes a great deal of sense... for some length of time t.  About 3 years, I hope.

    It's not really playing martyr: it's kinda like game theory expanded to my life, after I fucked around and accomplished nothing for 4 years.  I want to write code and read books, and would prefer to get paid for one of those activities.  I did have some semblance to loyalty to the company, but that's gone.

    I do hate golf.



  • @TheDauthi said:

    If I am not working on something vaguely interesting, I generally end up at work about 30 minutes late.  While this is partially due to long-suffering insomnia, that problem is greatly exacerbated when I am bored at work.



    I have yet to see a programmer who is good at difficult problems, but not kind-of lazy when working on boring jobs.



  • My experience is, make more, spend more.  You maybe drive a better car, wear a little nicer clothes and perhaps have a bigger/better pad.  But having 100K a year compared to 70K shouldn't make you feel any different.  I think it's market conditions that control everything, the market will pay you what the market can afford to pay you.  Sometimes at $100K you have a lot more expectations to live up then you do at say $70K, so sometimes the money isn't worth the stress.  In Canada with current tax situations the take home difference between $70K a year and $100K per 2 week pay period is roughly $200.  So having an extra $200 every two weeks is nice, it really doesn't change how you can live.

     

     



  • @e.thermal said:

    My experience is, make more, spend more.  You maybe drive a better car, wear a little nicer clothes and perhaps have a bigger/better pad.  But having 100K a year compared to 70K shouldn't make you feel any different.  I think it's market conditions that control everything, the market will pay you what the market can afford to pay you.  Sometimes at $100K you have a lot more expectations to live up then you do at say $70K, so sometimes the money isn't worth the stress.  In Canada with current tax situations the take home difference between $70K a year and $100K per 2 week pay period is roughly $200.  So having an extra $200 every two weeks is nice, it really doesn't change how you can live.

     

    I think it's also important to compare the cost of living in the given area. What's the point of making 5K/year more if you have to spend much for the same standard of living, because the rents are higher etc?


  • Disclaimer - I'm self-employed so I don;t know how much I actually make any given year.

    I worked for years in the City of London for big corporates, contracting and making megabucks.  Well, bucks, anyway.  I then made the decision to get the fuck out and live in the Alps.  Which was a big change, and ended up working as a house painter and chairlift driver for a while, earning minimum wage.  That's changed now, but even if it hadn't, there's no way in hell I'd go back to the city.  I lived better here on minimum wage than I ever did in London.  And I'm happy.  I was even happy working as a house painter.

    Fuck the money.

    Go for quality of life.

    Do what you have to, but be happy.  You only get one shot at life.  Enjoy it.

    Simon


  • ♿ (Parody)

    @e.thermal said:

    In Canada with current tax situations the take home difference between $70K a year and $100K per 2 week pay period is roughly $200. 

    • $100,000/yr - $70,000/yr = $30,000/yr
    • $30,000/yr  /  26 paychecks = ~$1,150/paycheck
    • $200 net / $1,150 gross = ~0.17% of gross

    .... 83% tax? I thought the highest canadian bracket was 29%.

     



  • In Austria, you start loosing many benefits (like free kindergarten, possibility to deduct some insurances from taxes etc.) once you earn too much; the limit is somewhere around 50K.



  • In the Seattle area, we are paying $100K pretty regularly for senior talent.  By senior, I mean 7-10 years experience in commercial projects, excellent .NET/C# skills, remembering some comp sci/math, some SQL server skills, etc.  

    The tough part is finding people who qualify as 'senior'.  For me, that title is more about the sorts of problems you can solve than how many years you've been on the job.  We get lots of candidates in for interviews who have been programming for 10 years, 3 in C#, but can't tell me what Dispose() is for.  Go figure. 

    -cw



  • @CodeWhisperer said:

    In the Seattle area, we are paying $100K pretty regularly for senior talent.  By senior, I mean 7-10 years experience


    Can you explain this a little more in depth? I know quite a few people who have worked "7-10 years", have worked several C# projects, and I honestly wonder if these criteria alone justify a 100K salary.



  • @CPound said:

    Can you explain this a little more in depth? I know quite a few people who have worked "7-10 years", have worked several C# projects, and I honestly wonder if these criteria alone justify a 100K salary.

    >g<  You ignored the second paragraph:

    @CodeWhisperer said:

    The tough part is finding people who qualify as 'senior'.  For me, that title is more about the sorts of problems you can solve than how many years you've been on the job.  We get lots of candidates in for interviews who have been programming for 10 years, 3 in C#, but can't tell me what Dispose() is for.

    About 1 in 15 job candidates that I interview hit that bar.  Those candidates almost invariably have a broad range of experience, including a couple shipped products (preferably multiple versions of the same product).   These should be people equally able to work on the front, middle & back-end tiers; they should have solid background in more than one language, and produce good code (and explain why it's good code).

    The biggest criteria, however -- and the focus of my job interviews -- is the ability to solve problems.  I'm not talking about BS microsoft interview trick questions, but the ability to take a problem from outside their comfort area, decompose it into a class structure, or a data flow, or a grammar, or a data structure, or algorithm, or whatever set of those is appopriate.  

    That skill is a LOT more rare than the ability to grunt out some code with the assistance of intellisense & the MSDN docs.  Some people write code for 20 years and never develop it -- or even perceive that there is more to learn...

    And, just in general, the Seattle area has a shortage of experienced devs...we can't hire enough so we go to consulting companies for "staff augmentation" and THEY have to contract to other companies just to meet their obligations to us.   Crazy.

    -cw

     



  • @CodeWhisperer said:

    You ignored the second paragraph


    I didn't really ignore it. I just wanted you to explain it a little bit more. I appreciate that.

    @CodeWhisperer said:

    That skill is a LOT more rare than the ability to grunt out some code with the assistance of intellisense & the MSDN docs.

    This is what I was getting at.

    When I first read your post I thought, "Heck, anyone can doctor up a resume, claim to have coded enterprise apps, and get this exciting 100K position!"

    I have to admit, you make it sound so easy. There are a couple people I know who would love to make 100K. They would doctor up their resumes and would ace the interview because they are expert interviewers. But when it would come to performance time, they would be rifling through the MSDN docs...and frantically I might add. How do you feel about that? That some of the people you will hire will be phoneys? Like it or not, some will get past your screening. And they will be making 100K annually to boot. Doesn't that bother you?



  • @CPound said:

    I have to admit, you make it sound so easy.

    <FONT face=Arial size=2>Easy?  Like I said, only 1 in 15 that I interview (give or take), and that's after the recruiters have done their cull, and then I've gone over the resumes and picked the ones to interview...so it's more like 1 in 50 who apply.    The other 49 probably don't think it's easy. :)</FONT>

     

    @CPound said:

    How do you feel about that? That some of the people you will hire will be phoneys? Like it or not, some will get past your screening. And they will be making 100K annually to boot. Doesn't that bother you?

    <FONT face=Arial size=2>Oh, it gets much more egregious than that.  I once worked for a company that paid around a half a million to a guy for his slow, buggy technology -- which I rewrote from scratch in about 2 evenings.  Bother me?  Makes me want to hurt people & things.    And that's just one guy, get consulting companies involved and now you're being billed $100/hour for 5 people, only 2 of whom can actually do anything, for months (or years) on end.   Phoneys abound.</FONT>
    <FONT face=Arial size=2></FONT> 
    <FONT face=Arial size=2>I can't fix all of that; but when I got to be one of the guys making the decisions, I set up our hiring process to help catch the phoneys.   Since I set it up, I haven't had to regret one of those 'senior' decisions. >fingers crossed<</FONT>
    <FONT face=Arial size=2></FONT> 
    <FONT face=Arial size=2>Actually, "phoney" isn't really fair, though.  Often, these guys just don't know enough to understand that they don't know enough to do these jobs.  Sadly, many hiring managers also doesn't know enough, and hire the person anyway. </FONT>
    <FONT face=Arial size=2></FONT> 
    <FONT face=Arial size=2>But if one slips through, and they can't do the job, I can fire them. :)    </FONT>
    <FONT face=Arial size=2></FONT> 
    <FONT face=Arial size=2>-cw</FONT>


  • @CodeWhisperer said:

    <font face="Arial" size="2">I set up our hiring process to help catch the phoneys.</font>


    CW, do you honestly think you can prevent an inept programmer (who is intent on making mucho cash) from getting past your hiring process?

    True, you can fire them. But that is after the company has made a huge investment in that individual. At that point it is too late. Not to mention the fact that these people typically have access to sensitive data. That's pretty scary.

    I know several guys who are "career interviewers". They can ace any screening you can throw at them. It's their job to know all the appropriate "buzzwords" and catch phrases. They can mix it up with the best of them, from lower level tech interviewers all the way up to top management. They would con you too.

    You're probably thinking you can catch the phoneyness. But I bet you won't. This is what they do. (I know because I've talked with them.) First, they take a look at a job description. Say it requires 6 years of VB Script development. They put together a "test case" in which they developed "enterprise applications", and they create various "scenarios" which they rehearse for the upcoming interview. They get together with their friends (who are also career interviewers) and they play Q&A. Techinical and stress questions will be thrown back and forth and they field them. This gives them practice with explaining their "test cases". I witnessed one of these little get-togethers and these guys are good. They sound totally professional.

    But this is all fictitious. Most can't program past the HTML/Javascript level. They know enough programming buzzwords to sound knowledgeable. They'll use words like "method" and "concatenate", and they study the definitions of these words just in case the interviewer asks them, but they really don't know what they mean. If you dig deep enough, you will find the lies.

    And the company they worked for on their resume? Not real. It doesn't exist. "Why would they do this if the recruiters/companies perform background checks?" you ask. Well, get this. 9 out of 10 companies don't perform checks. Even the most cursory kind. Think I'm exaggerating? Do your research. They don't do the checks. They're too busy trying to match the applicant with the position. Basically if the applicant can "talk a good game", then they're in.

    Another thing is, they're all about the money. It's not about gaining some experience with a new cutting edge technology, or getting in with a particularly good company. It's about the green, plain and simple. If you were to ask them "Why do you want to work here?" They would respond with "The cash man, the cash." Sad, but true.

    So, having read all this, what do you think of your hiring process now? Do you think you could spot the phoney?



  • @CPound said:

    CW, do you honestly think you can prevent an inept programmer (who is intent on making mucho cash) from getting past your hiring process?

    Yes.   Or at least the vast majority of them.  I never claimed 100% effectiveness, just a large incremental improvement.

    @CPound said:

    I know several guys who are "career interviewers". They can ace any screening you can throw at them. It's their job to know all the appropriate "buzzwords" and catch phrases.[...] They would con you too.

    Maybe.  I don't interview based on buzzwords, so they'd already be out of their comfort zone.  Recall that my interviews are based on their own self-assessment.  If they're claiming .NET godhood, there's a lot of nooks and crannys I can go digging into.  If they claim expert design skills, there's any number of questions I can go to.   Even my basic "show me some code on the board" question has 4 or 5 different answers that I anticipate and then I dig deeper based on the results. 

    The reason that those guys keep getting hired is that they are interviewed by fools.  I can't do anything about that except to try to be less of a fool.

    @CPound said:

    They put together a "test case" in which they developed "enterprise applications", and they create various "scenarios" which they rehearse for the upcoming interview.

    Like I said, interviewed by fools. You want to know how long I spend talking to people about what they've got on their resume?  About 2 minutes.  I use it as a springboard to talk about specific areas, and that's about it.   I don't give a damn what they did for the last employer, I want to know what they can do for me.

    So, a brief resume talk, a few quick questions to ascertain the level of knowledge about the language/technologies, then a coding question tied to the level of skill they have claimed and so far demonstrated.  Sometimes this is a strictly coding question just to make sure they can actually do it; but if the person demonstrates moderate knowledge we go up to a pseudo-design question.  Then some specialized ones, SQL, ASP.NET, networking, etc.   And then usually one or two big design questions (might be OOP, might be networking, might be something completely different depending what I'm thinking about that day and what the candidate has demonstrated).  

    About 2/3 of interviewees never actually make it to that last step and wash out in the tech questions & or can't make it past the simple coding problems.  I hire a number of those guys into the junior dev/SDE2 roles maintaining systems and building web apps, and the ones who make it through the design problems get put into the more interesting projects.

    @CPound said:

    They'll use words like "method" and "concatenate", and they study the definitions of these words just in case the interviewer asks them, but they really don't know what they mean.  If you dig deep enough, you will find the lies.

    Does it sound like I'm not digging? 

    But please, if I'm going to ask for definitions of a word I'll go to "polymorphism" and then ask them to describe for me a case where they have used it in the past.   

    @CPound said:

    "Why would they do this if the recruiters/companies perform background checks?" you ask. Well, get this. 9 out of 10 companies don't perform checks.

    Remember me saying that I changed the hiring process...?  have you caught on to the fact that I'm the one making the hiring decisions?  For the senior candidates, I call the references myself.  For the junior ones, the recruiters do.   And I field at least one call a month asking for reference checks for old employees, so I know other companies do as well. 

    But your point is a valid one, it isn't done enough. 

    @CPound said:

    So, having read all this, what do you think of your hiring process now? Do you think you could spot the phoney?

    I feel even better about it.  I spot them all the time, whether it's intentional resume-padding, or just honest-to-god cluelessness. 

    In the case you're presenting, that candidate probably wouldn't have made it past resume screening, and if it did, they'd be politely escorted out after about 30 minutes of interviewing.  "Method" and "concatenate" will get you this --><-- far.   Others are more subtle and take longer to root out (usually the self-deluded ones).  And, yes, some might slip through.   Then I fire them.  It happens.

    -cw



  • Thank you for your intlelligent responses CW. (It's been a while since I conversed with someone in the WTF forum who didn't have to resort to profanity in their responses.)

    What do you think of someone's age during the hiring process? I know it's taboo to even discuss such a thing (not to mention illegal to discriminate based on age), but let me make my point.

    Say you have this young-looking candidate. Their resume says they have 10+ years experience "coding". You can't ask them their age, but you know they can't be more than 23 years old. If that. That means they started "coding" at the ripe age of 13 or so. And say their experience includes some mom & pop operations early on, and then they graduated to actual industry standard stuff. What is your take on that? Are they any less likely to be considered for the position?

    Are you the type of person to give this kid a chance to prove himself? Are you more likely to hire "seasoned" coders? (There is something to be said about hiring a seasoned professional.)

    Age can also translate to "maturity". When you are considering hiring a younger candidate, do you think about them "acting up" on the job? Will they be focused? Will you have to correct them and guide them every day? That could get annoying after a while.

    What's your take on the whole age issue?



  • @CPound said:

    What's your take on the whole age issue?

    I started programming in 1979, when I was 11.  My first 'professional' programming gig was in '85 when I was 17.  I'm in no position to be discriminating based on age.  On the other hand, I also have to recognize how little I knew at your age (particularly compared to how much I thought I knew) and be realistic. 

    @CPound said:

    You know they can't be more than 23 years old. [...] Are they any less likely to be considered for the position?

    We hire people in their early 20s all the time, they don't typically go right to the 6-figure positions, however.  

    The 10 years experience part doesn't 'impress' me just because I'm well aware of what my code looked like at 16 :)   I'd ask you about it, have you describe some things to me, and most importantly "so, looking back, what would you have done differently?" 

    But you'd get the same set of questions, you'd be subjected to the same scrutiny -- and we'd call some of those mom & pop shops. :)

    @CPound said:

    Do you think about them "acting up" on the job? Will they be focused? Will you have to correct them and guide them every day?

    Well, if they've been working for 10 years, I'd hope it isn't an issue. But, it's not like my life wasn't filled with angst and drama when I was 23.  Don't piss off the people you work with, don't piss me off, be in the meetings you're expected in, get your work in on time and at the quality expected, and I don't really care.

    I wrote a blog entry about it that you might find interesting.

    -cw



  • @CPound said:

    You can't ask them their age, but you know they can't be more than 23 years old.

    Is it illegal to ask them their age in the US? If so, doesn't the CV expose their age?



  • @CodeWhisperer said:



    @CPound said:
    You know they can't be more than 23 years old. [...] Are they any less likely to be considered for the position?

    We hire people in their early 20s all the time, they don't typically go right to the 6-figure positions, however.  

    The 10 years experience part doesn't 'impress' me just because I'm well aware of what my code looked like at 16 :)   I'd ask you about it, have you describe some things to me, and most importantly "so, looking back, what would you have done differently?" 

    But you'd get the same set of questions, you'd be subjected to the same scrutiny -- and we'd call some of those mom & pop shops. :)

    @CPound said:

    Do you think about them "acting up" on the job? Will they be focused? Will you have to correct them and guide them every day?

    Well, if they've been working for 10 years, I'd hope it isn't an issue. But, it's not like my life wasn't filled with angst and drama when I was 23.  Don't piss off the people you work with, don't piss me off, be in the meetings you're expected in, get your work in on time and at the quality expected, and I don't really care.

    Just so you two know, this piece of the discussion is highly applicable and interesting to me.  I just turned 24, and am looking to leave the company I've been working at for the last three years because it's very unstable.  [I've been offered money to stay for the moment, but a better position, or a chance to go back to school would be reason to jump]  I'm not comfortable talking about why or in what manner the position is unstable in public discourse, but basically, 'upper management said so' have become the well-known watchwords for a large-scale technology... retrograde maneuver?

    My geographical area is not exactly renowned for technology, so I'm looking to leave it, too.  As I implied earlier, companies have been very reluctant to hire me. I lack a degree, I have somewhat limited experience; this job is my first position as a programmer and my first 'real' job.  Before this, I wrote code for fun.  What advice can ye older IT people offer someone in that position?

    I should start a new topic for this, but it's not significantly off-topic in this one, and there is other pertinant information.


  • @TheDauthi said:


    What advice can ye older IT people offer someone in that position?


    I bet you'll hear that answer a lot of times, now that you've asked: If it is realistically possible, get your degree.



  • @ammoQ said:

    @TheDauthi said:

    What advice can ye older IT people offer someone in that position?


    I bet you'll hear that answer a lot of times, now that you've asked: If it is realistically possible, get your degree.

    Yes... but more important is just to have some of that knowledge, regardless of where you get it.  I personally never got my degree -- I spent plenty of time in school, but when it came time to concentrate on something, there were just too many interesting things to work on for me to care about completing a degree program. (not the smartest move, but it worked out ok).

    A degree means you stuck something out for 4 years and should have a modicum of basic knowledge, but it someways it also raises the expectations I have.  I recently interviewed a guy with a BSc & MSc from MIT...couldn't tell me a damn thing about algorithms, data structures, etc.  So sad it nearly made me cry.   He didn't get a job, another guy who dropped out 3 years into a bachelors did.

    Small towns have different problems, but I found plenty of jobs in college towns, usually spin-offs from comp sci professors/students.  And once you're in an area with more than 250K-1/2 million people, there's enough of an industry that there are a good number of junior positions.

    Read the blog entry I referenced above, one of my points is that everyone has to start somewhere.  If I get your resume and you don't have much (any?) professional experience, then I definitely want you to be working on projects on your own that you can tell me about.  If you don't have any experience, then I'm not going to hire you for your experience, I'm hiring for potential.  So show me some :)

    -sw  



  • @CodeWhisperer said:


    I personally never got my degree -- I spent plenty of time in school, but when it came time to concentrate on something, there were just too many interesting things to work on for me to care about completing a degree program. (not the smartest move, but it worked out ok).

    It worked out for you and it worked out for me (no college degree either) but times are getting harder for newbies.



  • @ammoQ said:


    It worked out for you and it worked out for me (no college degree either) but times are getting harder for newbies.

    I don't think that's quite accurate...but it's hard to explain without giving a bit of my philosophy first: software is all about abstraction. 

    I don't mean "abstraction layers" as a specific design technique, but as a philosophical concept.  Simply the act of moving a mouse is an abstraction, you've translated physical movement into a purposeful action on the screen.   Most people are able to make this jump, even at a very young age, and don't have much trouble using a mouse.   Building HTML is a type of abstraction (syntax into display), though without much actual behavior.  Actual "programming code" is an abstraction of syntax into intent.

    Now, a lot of people get to that point and they think that they are done.  They can code up web-apps, maybe they brute-forced their way through a somewhat tricky problem.  You can do some impressive looking things with just a little code, and people who don't know any better will be really impressed.  

    Sometimes those are newbies, sometimes people stay at this level their entire career.   It's tough out there for most these candidates unless they have a skill set that is particularly in demand, or leadership experience, etc.  (That's changing in big markets like seattle though, there are a lot of open jobs, and a lot more of these guys are walking back into decent jobs that they aren't qualified for just because somebody has to).

    Beyond that point, you get into the people who are really good at taking problems apart and describing them in ways that can be implemented with a technology.  Or who are particuarly adept at the abstractions of code construction -- or both.  There can be several different abstractions at play simultaneously, and finding the right ones, describing them, and being able to prove them to yourself and others is a whole other matter.  Sometimes that's math or comp sci (in which abstractions abound), sometimes you need specialized knowledge from a different field (or several different fields) and abstract it into something the computer can work with. 

    Mostly it's a learning process that you have to undertake over your entire career.  For the people who do, those 100K jobs start to open up more and more frequently. 

    Now, if you want to know my opinion on one of the huge problems in the industry: generally we don't recognize the distinction between the two types I've described.  They each use each other's titles, they apply for each other's jobs, and they each appear about the same to the untrained interviewer; sometimes don't even realize which group they fall into.  

    But that's several other posts. :)

    -cw



  • CW,

    What if I was to (personally) apply for one of your positions?

    Say I walked in, said I was CPound from the DailyWTF, and asked you, "Can you place me in your open 100K position? I want to make 100K. Hey, I'm honest. But please don't ask me any of your difficult screening questions. I may not do so well. But I am an honest programmer, with years of industry experience. Just don't ask me to prove it. The fact that I'm CPound from the DailyWTF should suffice."

    What would you say to that? Would you overlook all the interview questions and just place me in the 100K position? Hey, I'm CPound!



  • @CPound said:


    What if I was to (personally) apply for one of your positions?

    [...]

    What would you say to that? Would you overlook all the interview questions and just place me in the 100K position? Hey, I'm CPound!

    Err...huh?  If your name was Linus we'd still have an interview.

     


Log in to reply