14

Firstly, I was unsure as to how to ask this question in a QA format & in a generic way, but I'm trying.

I am a Software Developer (but I'm guessing this will apply to other skilled positions) and in my experience it is counter productive to hire Senior Software Developers externally despite it seeming to be a popular thing to do. The reason I am against it is that it takes so long for a new Dev to get up to speed with the company procedures and the domain that existing non-senior Devs need to coach the person who will become their, what, mentor?

Surely it is better to promote and recruit from (and to respectively) the bottom, rather than pay someone a Senior salary to effectively be a standard Dev for however long it takes to get up to speed. Perhaps even recruit Seniors as standard Devs on some sort of fast-track to promotion system?

FYI: Roughly, by Devs I'm referring to those with 1-3 (maybe as high as 5) years experience. Senior would be someone with 4 or more years with some people/project management experience, lets say, but largely still Devs. Just graduated I consider Junior.

So my question(s) is/are have I just been in quite similar companies, is this actually standard procedure and if so am I missing something as to the benefit of this?

4
  • 5
    Senior would be someone with more than 10 years experience. Someone with 4 yeasrs expereince is still an intermediate dev.
    – HLGEM
    Commented Jan 11, 2014 at 13:38
  • Really? Interesting. I've worked in a fair few companies now and almost all of them hire senior (or promote) at about 4 years experience, even a very large, very well known software company who regularly promote to senior at about 2 years.
    – Ross Drew
    Commented Jan 11, 2014 at 16:55
  • 6
    Having the title and being senior are two differnt things, 2-4 years experience simply not enough to be actually be senior.
    – HLGEM
    Commented Jan 12, 2014 at 17:29
  • I agree with HLGEM, seniors are typically 10 years of experience or more, if the company isn't just handing out titles in lieu of raises.
    – Andy
    Commented Apr 2, 2016 at 0:12

3 Answers 3

21

Real senior people can come up to speed faster than you think. Of course if you consider 4 years to be senior that is part of the problem. Those are at best intermediate devs not senior ones.

Now there are pros and cons to both hiring seniors from outside and promoting up.

Promoting up works well if you have someone who is ready to be promoted to a senior position. Remember though it is very dangerous to promote someone who has never had any experience except at your company unless you are large and the person has worked in several areas for several different people. Part of what makes a good senior person is variety of experience.

The pro in promoting from within is they are familiar with your projects and work methodology. Unfortunately, that is also the con. They tend to have blindspots about things that they have just accepted as the way things are over the years. This is especially true if the person has only worked at your workplace. Then they don't know there are other better ways to do things and are not truly senior no matter what the title. Even worse if when you grow rapidly and all the new senior people came from the company because they then institutionalize all the bad habits and poor methodologies. I worked in a company like that once and it was impossible to change all sorts of short-sighted policies becasue the senior managers all had started at that company directly out of college and didn't have the depth of experience to be able to see the problems. Nothing improved as far as how things worked until those people left.

Now the pro to hiring a senior from outside is that they may know the solutions to your problems, solutions your current staff would never think of. They may also be specialists who have a level of knowldge you simply don't have from the current staff (as you grow the need for specialists tends to happen). So you have problems with your current database design and hire a database specialist to help you optimize, for instance. Or you are going into a new line of business and hire someone with domain experience in that business or technology. The outsider perspective can be invaluable as a company grows.

The con is that they take time to come up to speed. (Real seniors may take less time but they still take time, software is complex.) Another con is that many of them are not as senior as you might actually think. Just years of experience isn't enough to be senior and it is hard to hire good people, so hiring a senior from outside is a riskier proposition since you may not know much about their actual work. Another con is that hiring at the senior level from outside can be demoralizing to current employees who wanted that position. If you only hire seniors from outside, then you will find your less senior people leaving becasue they see no path to promotion at your company.

From a business perspective, the best results tend to be when you do both, promote from within and hire some from the outside. This is especially true if you are very picky about outside senior hires and make sure they have something really valuable to contribute before hiring them.

1
  • Good points. People being resistant to change because of internal promotion is something I've witnessed but not really attributed it to the lack of external sourcing of more senior staff.
    – Ross Drew
    Commented Jan 11, 2014 at 16:52
26

My experience is the opposite. If you never hire anyone with skills that are different from what is inside your organization, you wind up having a very hard time improving, especially if the existing staff don't spend a lot (and in software development, I mean a lot) of time developing very their skills and learning best practices.

For example, where I work now they had version control installed but very rarely used it. On the occasions they did use it, they would get to the end of a project and check in the source code. How would they have known that this is not the best use of version control if they hadn't hired someone who knew how version control could best be used from using it in several different companies, all of which were further along in their understanding of what VC is for than where I am now when I was hired?

I could give you many other examples, but you get the idea. To give you an example from another field, our client follows the model of hiring an intern and then when they graduate they hire her full time. Because she has never worked anywhere else, there are some big gaps when it comes time to do the practical part of the job and everyone else winds up scrambling to compensate.

When it comes to programming in particular, good, experienced programmers are quick studies. In any field, people who have the same 1 year of experience multiple times will have difficulty getting up to speed.

I have also noticed that people who have difficulty learning new skills quickly can have a hard time envisioning how quickly skills can be learned by people who are experienced and skilled in figuring out how to acquire new information quickly. And since they don't have that skill, it's not possible for them to determine whether someone else does or not, which makes it doubly risky for such a person to hire another person on the assumption that that person will be a quick study.

What this all means is if you think someone you hire from the outside will take a long time to come up to speed, you're probably right--but not because it's not possible in the abstract to find someone who could come up to speed quickly.

9
  • 3
    Def +1 for, "When it comes to programming in particular, good, experienced programmers are quick studies." That's true across disciplines as well I think as you master the fundamentals of a trade/discipline. Cooking at a fine dining level, chemical engineering, piloting different aircraft, etc. Commented Jan 11, 2014 at 3:03
  • 1
    +1 "good progs are good studies" and "people have difficulty envisioning ..". Thats experience talking, excellent answer.
    – sunny
    Commented Jan 11, 2014 at 8:55
  • True, all true! However, I'm not referring to standard Devs as just graduated though, that would be Junior IMHO. So promoting from within, and hire external standard Devs with 1-3 years experience would surely bring the same benefits, as well as those I mentioned.
    – Ross Drew
    Commented Jan 11, 2014 at 10:42
  • 1
    +1 dear God yes. Also, company procedures and the specific domain has very little impact on how effective people are at their jobs. If I'm making an app to work against a database, it makes little difference if that database holds widgets, specifications for the tastiest burger in the world, or a part list for building a cruise ship.
    – Telastyn
    Commented Jan 11, 2014 at 16:20
  • 1
    @RossDrew, if you already have very good senior people to train up your internal promotions, then fine. However, if you don't have a wide experience to know what "very good" looks like you might not have an accurate idea of whether your existing seniors can bring promoted juniors up to speed. I brought up the just graduated point because if you take your way of thinking to its logical extreme, you'll have a workplace where no one has worked anywhere else, but everyone thinks they're terrific. Commented Jan 11, 2014 at 23:09
1

HGLEM and Amy make points very similar to what I would.

What I might add to that is that I generally look for people skills first and technical skills second (though not a far second). This is the approach I have had the best success with.

Being a leader, even of a small team takes skills that are not always teachable. But technical skills are.

Also remember that every person you place in your organization, especially your direct reports, hold your job and success in their hands. If they make serious missteps it can cost you your job. If they make significant contributions it makes you look good.

And take lessons from start-up companies or in acquisitions where little lead time was afforded and immediacy is key.

Personally, for the most part, I feel that given the time, I can mentor anyone with enough potential toward a successful elevated position. And in many cases that is my preference. However, timing is usually the determining factor.

I have moved junior-level people to mid-level management roles to other continents with great success where the potential was there and I was able to play a direct mentoring role.

In other cases, with no-one internally with the right potential, or available time-frame to develop, the decision went differently.

This is all to say, think carefully about each hire, make decisions based on appropriate-term impact. There is no right or wrong answer to your questions that will cover every position you hire, every team or every company. But you will likely be responsible for the outcome, regardless of which way you chose, or even policy.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .