Apps

Poll: Are inexperienced developers worth the risk?

Many employers cite risks associated with inexperienced developers as the reason for outsourcing some development tasks. Do you think inexperienced developers are worth the hiring risk?

The continued health of the software development industry depends on a steady influx of new talent. Unfortunately, it seems like many employers would rather outsource the kinds of tasks that junior and entry level developers used to do; employers cite the risks with these inexperienced developers, like the need for the veterans to spend time helping them learn or the increased likelihood of mistakes.

And yet, if inexperienced developers cannot find opportunities to learn and grow, who will be the intermediate and senior developers down the road? In addition, less experienced developers have many advantages, such as lower salaries, "fresher" knowledge on occasion, new perspectives, and often more enthusiasm and less cynicism with the work world.

Do you think these advantages are enough to offset the possible disadvantages of hiring inexperienced developers?

J.Ja

About

Justin James is the Lead Architect for Conigent.

33 comments
j.baig
j.baig

My question is why do you guys keep asking the same question? Do you really believe experienced developers that are around today were born with the experience? Unless I missed something experience doesn't make you immortal. We all have an expiration date and we owe it to ourselves to prepare the next batch. In my opinion only senior programmers that have lost their edge and willingness to learn are intimidated by younger inexperience programmers. Information Technology is for people who enjoy learning and are motivated to advance their skills all the time. Hire inexperience programmers who have willingness to learn, give them your programming standards, teach them about good programming practices and provide them with constructive criticism. It will eventually pay off.

MarkMillman
MarkMillman

My experience (30 years of it) is that good programmers are born, not made. Some of my best programmers have come straight out of university, albeit with just a little mentoring. But it is essential that new programmers be mentored by senior programmers, this is true whether they are young or old. Each shop has its own standards, practices, and skeletons in the closet; new programmers need to learn these.

jim.lonero
jim.lonero

Funny thing, my experience with outsourcing is that the product returned looks like the developers there are not that experienced. We've had to constantly check the code after it is returned to make sure it has good engineering quality, understandability, and does what the requirements ask.

waltersokyrko
waltersokyrko

Contracting out the work does not garantee that you will get an experienced developer. The contracting firm may use inexperienced developers lead by a few experienced developers.

boxfiddler
boxfiddler

is more important than experience. Experience comes in doing. Doing well requires willingness to learn. I didn't vote. Need that radio button for "Depends."

j-mart
j-mart

We all start out inexperienced. Those that are suitable and think the right way soon get up to speed and become useful. Those who have not chosen a career they are suitable for, can have a lifetime of experience and still be useless.

W.E.
W.E.

Cool. We'll have a POOL of junior inexperienced low paid programmers work on the code. That will fix it! I wonder how the people that are outsourcing their code tell the other end "we want only senior experienced people working on this code". Or can they ;-)

Tony Hopkinson
Tony Hopkinson

Given most of those making the hiring decisions can't tell the difference between an experienced developer and someone who's been doing it a long time.... Not having junior is a false economy, why pay someone like me to knock up forms and such or do basic OO stuff. Not having a senior is a stupid economy. The real problem is not that inexperienced developers have no experience, it's that there's a glut of unemployed developers with seniority. If there weren't you wouldn't have had a reason to post...

Sterling chip Camden
Sterling chip Camden

... a more experienced developer can take them under their wing and mentor them aggressively. Then they can be a really good investment. But if you just throw them on the code, you'll get what you deserve.

Tony Hopkinson
Tony Hopkinson

but for those of us who like doing it and have become at least competent, it's a almost a given. Learning how to apply the talent effectively in business land, now that's a different ball game and it's definitely not a skill we are born with.

knudson
knudson

I agree born not made, generally. But they have to be willing to learn and listen, many straight out of college had the attitude that they knew it all and wouldn't listen. Some looked down at me with 20 years (at the time) experience, but no college degree. Many quickly came over once they ran into a problem, or f' good and I had to bail them out. How about the developer that created a daily process (my idea) that ran about 30 hours, and used massive amounts of I/O (Mainframe where we 'paid' for each I/O). I was on sabatical when it was created, after the boss brought me in, 20 minutes later gave them a 1 line fix. Now it ran in a few hours and consumed a fraction of the I/O. They had been trying to figure it out for weeks.

Tony Hopkinson
Tony Hopkinson

our code, one or two eyebrows might get raised as well. 'You' asked for the cheapest quote, you got the people who felt they could still make a profit...

Justin James
Justin James

I agree 100% that when you outsource (not even offshore), that you lose control over who is doing the work, and the experience level is often much lower than what you are paying for. But that doesn't stop the decision makers from thinking that they are getting an all star team for junior varsity price... J.Ja

WebCzar
WebCzar

Indeed, I must agree with Tony. At what point will 'professionals' and the public-at-large grasp the insanity of such economic suicide committed by 'management'? Today's outsourced junior (or rookie) developer is tomorrow's senior... in INDIA. And guess what? S/he is undercutting you at 1/5 the cost, with no health benefits/perks. Engineers, developers, etc better wake up and smell the cheap coffee being served. You're next... the 'cloud' is supra-national. Tell me, what will America be producing in the future? Tacos, debt, and welfare checks?

jdardard
jdardard

Very good post! I seriously doubt than any self-respecting company (or individual) would hire an inexperience developer. Far too risky, and the final cost could mean the difference between survival and failure in the business world, as well as self-image. On the other hand, inexperienced developers would not do themselves any justice in soliciting their services to clients until adequate experience has been attained -- if for no other reason than for their own self image. What good is someone who successfully solicits his/her service, and then fail in their production effort? Once the image of a failing reputation has been established, it's very difficult to change, if ever. As a new developer, with a very long way to go still, I would never even think if soliciting my services to anyone, even a close friend - not until I've proven to myself that I feel that I'm worth the risk. Joe Dardard

cmereau
cmereau

Only if the business is well protected with at least 3 servers. Development, Test, and production servers. Back in the early 2000 I learned to program on a production server for a worlwide company. Needless to say I ended up corrupting some data in the database and felt terrible about it, until I went to work for a company that uses the 3 server model. I realized then that this big corporation was not in their right mind to let anyone work on a production server. The saddest part was that they did not even have a functionning backup. I am so glad not to work there anymore but I must admit that I learned a lot while I was employed there. I have now blossomed into a Software Engineer and I realize that if I not been given the opportunity back then I would not be where I am now.

MyopicOne
MyopicOne

...and you're answer will be no better than 'Only Occasionally'. The real studs pay for themselves many times over...

bb05056
bb05056

This could be said for any profession. If the human race stopped reproducing because the youth of today are 'inexperienced' humans, where would we be in 50 years time??? How many out there get their car fixed at a garage? Without apprentices to learn the mechanic trade, who's going to fix them in years to come?

Tony Hopkinson
Tony Hopkinson

around programming, essentially it's a way of thinking, anyone can do it, some of us do it naturally though. I've mentored people with and without the 'gift', they are all still working as far as I'm aware, and I think that says more about how business views us than anything else. It'll do...

Tony Hopkinson
Tony Hopkinson

There will always been some who need my level of ability and experience, and there aren't that many with it. If some fool picks a cookie cutter over me, I wasn't interested in working for them anyway. That's not an newbie versus old head question either, there are a lot of aging cookie cutters about, they are even less of a threat to my employment.

ultimitloozer
ultimitloozer

are we to assume that this individual should therefore change their occupational choice? If an inexperienced developer does not even look for the opportunity to gain experience, he will remain inexperienced forever. That is not a very good way to grow. And following your logic, there will come a time when there are NO experienced developers at all. That will not benefit the market either. As for the risk/reward for businesses, you sound like an MBA; just looking at the immediate future (under 6 months, 1 year at the most). If a business actually invests in inexperienced workers (not only developers) and make it desirable for the individual to remain with the company, the rewards can be far greater than they initially seem. It's just too bad the most business leaders and hiring managers focus on the short-term instead of a long-term investment in their employees.

geekware
geekware

If you never hire an inexperienced person or not even offer your services. How do you suggest ever getting experience?

apotheon
apotheon

There should always be some kind of dev/test environment separate from the production environment. There's nothing magical about experienced developers that changes that. Sure, you should only hire inexperienced developers if you have some kind of development and test staging before your code goes live, but you should only hire experienced developers under those conditions, too. If you can't maintain a dev/test environment of some kind separate from the production environment, you simply shouldn't be in business. The only possible exceptions are startups in their first few months that are made up of two founders, at least one of whom is a rockstar developer, and maybe a couple of additional developers. Oh, wait -- the problem is that with such startups the developers are almost always professionally inexperienced, and have done all their development at school and on their own time. . . . so, basically, if you're in a business that hires developers, you should pretty much always either be willing to hire inexperienced developers or get into a different line of business.

kmoore
kmoore

they are willing to listen and learn. If not, dump them quick. Being a "top-shelf developer" but not willing to learn only means that they will do their damage more quickly and efficiently than most. Ken

apotheon
apotheon

Truly top shelf developers are rare and should almost never be (unwillingly) out of work. You have to fill in the gaps with something, and I'd rather fill those gaps with people who still have something to learn than people who are resistant to learning. The former is mostly new developers, and the latter is most of the professional developers in the world.

Sterling chip Camden
Sterling chip Camden

... businesses have to look out for their best interests, not the interests of the computing industry. So it always makes sense to get the best person for the job that you can afford. What does that mean for your supposed catch-22? As experienced developers leave the work force, the bar for "experienced" naturally lowers and less experienced programmers will have to be hired. Conversely, if there are plenty of experienced programmers, then newbies will have to wait for them to die. So much for the common herd. However, for an individual just starting out, the key is to avoid being part of that herd. Work on your own to make yourself more experienced. Publish your own software on the web to showcase (and to build) your talents. Jump on open source projects and make your abilities pay off. This allows you to cut in line.

apotheon
apotheon

MBAs and accountants seem to think they can have experienced developers at inexperienced developer rates if only they are ruthless and underhanded enough -- and that, if they succeed in having their cake and eating it, the gravy train will never end (to mix some food metaphors). They seem completely unable to conceive of the notion that inexperienced developers will lie about their experience to get hired as "experienced" developers -- thus guaranteeing that, in the long run, they will end up entirely incapable of ever getting an experienced developer.

jdardard
jdardard

I see all the remarks have valid viewpoints. This discussion could last til doomsday, and I see no point in pursuing my views any longer. I do want to praise everyone who submitted valid views, though. It's the manner in which complex issues are resolved the American way... Thanks to all, Joe Dardard

jdardard
jdardard

Having been around for many years, I've been in that position in a different profession. There are many ways around this, but one of the most common is to hire on as an underling, if possible. In this fashion, one gets the added schooling of the more advanced seniors in that department, and eventually reaches that advanced level himself/herself. There are other ways, of course, but unfortunately, too many to list in one post. It's good to keep in mind that the "experienced" developer (or experienced anything) has had a beginner's level start somewhere. Joe Dardard

Tony Hopkinson
Tony Hopkinson

Wait for it to go wrong and then snap up anything you need off welfare, or may be offer them another $1 an hour now some idiot has 'trained' them up.

Tony Hopkinson
Tony Hopkinson

Could be a mirrored environment. A set of VMs to replicate potential customer environments. Or just trying your web page in a number of different browsers. If you don't have something, you will get found out and quick. I put people who don't have something set up and monitored in the same box as those who say "Source Control?" Amateurish amateurs.

cmereau
cmereau

I was speaking of a Corporation with a half billion yearly gross.

Tony Hopkinson
Tony Hopkinson

If they are resistant to learning they aren't professionals. That desire is one of the things any one hiring anyone for an IT role should look for. If the response to "We have something new for you to play with" is "Don't want to", show them the door. New is new to me, a or a new use for something that isn't. Anyone worth the title of programmer, is always asking two questions. How does that work and can I do better.