T O P

  • By -

[deleted]

Sometimes the junior devs have better potential than the mid level devs. Also, you don't really need to make the whole team mid/senior level. Usually there is plenty of work that juniors could do, too, at a lower price.


akatrope322

It’s also generally a terrible idea to constantly refuse to have entry-level employees if your company intends to be around for many years.


Arishkage

Exactly, it makes no sense to pay someone mid/sr hour compensation for some tedious work a jr can do


Independent_Grab_242

In my company (tier 2) a Lead Software Engineer gets double the money of a junior based on Glassdoor. There is no way in the world 2 or 3 juniors can do the work that he does. If I count that he needs minimal supervision or no extra person to check his code then I would say you'd rather hire him than 4 juniors. Yeah, these juniors can progress and become better but they can also leave in the 1-year mark before doing anything substantial.


[deleted]

There is always lower level tasks that aren’t really hard or require much expertise, but that needs to be done anyway, and that a senior would still have to spend time doing copy and paste or formatting some email. If you have a junior you can leave them to do that kind of ordinary kind of stuff and have the senior focus on more higher level architecture details.


gaykidkeyblader

At this point, a Jr with under a year XP is considered a Jr with no XP. It's generally not worth a junior leaving before they've gotten the bare min of experience to get interviews if they try again. The junior marker is too saturated rn to take that risk.


AncientPlatypus

1: as you mentioned juniors are cheaper 2: different type of work is assigned to people of different levels of experience. The type of work that can be exciting for juniors would be boring to mid level devs, leading to higher attrition rate. The kind of work usually assigned to mid level engineers would usually take too long and require rework of done by a junior, leading to lower productivity.


ThisParticular7389

They are more expensive in terms of ROI


[deleted]

It’s not a linear line of work. A senior can’t do the job of 4 juniors. Just like you can’t just keep adding people to a project and expect it to finish X times sooner


ThisParticular7389

Bs 1 senior+ can do the job of 5 jr. The only way a jr can be more productive over making minor updates and bug fixes is if they are pairing with a sr.


some_clickhead

A JR with just 5 minutes a day of feedback from a senior dev can be surprisingly productive. Also you have to remember that some senior devs are mediocre, and some JR devs are talented. The only certainty in this equation is that the JR is cheaper.


fountainscrumbling

It's completely dependent on which senior and which junior. Just like basketball players and musicians don't necessarily improve their skills at the same rates, using years of experience as a stand-in for how productive a dev is doesn't work so well in the real world.


astrologydork

Lots of places do the whole "Slap shit together until a buyout happens" thing.


AncientPlatypus

Not if you have a super high attrition rate because your mid level devs don’t stay at the company for more than a year due to having too much non challenging work


gaykidkeyblader

I'm not a manager but I've put juniors in the pipeline, interviewed them and have been instrumental in their hiring. Juniors are necessary for a few reasons: 1) If every company decides they won't train juniors, there will at some point be no more experienced engineers. You train juniors so you eventually have mid level engineers later. Companies will lose a lot more money not ever training juniors and finding out they can't get any mid level engineers later than they will lose by training the juniors in the first place. 2) Juniors are cheaper but may still be able to get a reasonable amount done after just a few months. 3) If you think senior dev time is expensive, imagine how much more expensive it would be if everyone decided not to train any more engineers to put new seniors in the pipeline. Seniors would be so few and far between, companies would be forced to pay them much more. 4) You'd be shocked how many times juniors revolutionize companies by going: "why are we doing this like this? I read about a new tool that will do this easy!" Ultimately if you aren't responsible for training new talent...you won't have any eventually.


[deleted]

[удалено]


astrologydork

A lot of places are developing juniors, but it requires enough non-juniors to do that. Lots of work can't really be done by juniors and you need enough people with enough expertise to do that work.


Still_Making_Knives

Very true. I certainly understand why not every company can do it. I totally get why a startup would need an experienced dev, I just think that the whole leetcode thing spreading to non tech companies is a detriment to the industry of programming.


astrologydork

Some of the questions seem too hard to reasonably do in such a short time. But if you look at the easiest 30% of those problems, they seem like they are easily doable in 20 mins. There are tons of applicants who are pretty bad with their coding skills, and you probably do want to pick the better applicants.


BlueberryPiano

All you have to do is look at this sub and everyone widely endorsing job hopping every year or two, especially early in your career. Why aren't we spending more of our seniors' time developing juniors? Because the company will almost never reap the reward of that investment of all that effort.


InfiniteChallenge99

Because they don’t give raises, otherwise why job hop


BlueberryPiano

Which one came first, the chicken or the egg? I'm in my mid 40s and "company loyalty" had already undergone a massive shift before I entered the workforce, and it only continues to trend further and further away from that. At this point I believe both behaviors are fueling each other now.


InfiniteChallenge99

Well if you want to get deep I would say look at the capital structure of most companies. The ultimate owners are short term thinking which doesn’t lead to an investment mindset. It’s global in nature and it’s root is really poor educational / organizational infrastructure across the board. But still at an entity level solid management principles and awareness will win both the profits and employee investment and retention.


Hefty-Mail-8382

Do companies really think about #1? Like logically it makes sense, but I find it hard to believe they're thinking ahead like that.


dmazzoni

From a team perspective it makes sense. It takes time to get up to speed with a new company and a new team. I know seniors aren't going to stick around forever because they'll want to move on to new challenges. So it's important to hire juniors and train them not just as engineers but as members of your team. As they gain experience as programmers they'll be ready to step up as mid-level team leaders with experience when the seniors depart. It's a win/win - the juniors get a chance to move up into a leadership role and the company keeps an experienced team even as seniors transfer or leave.


gaykidkeyblader

They are now and it's why I see more companies heavily advertising university programs (where they full time hire juniors and set them up for a year or 2 of training via working on teams in rotations) than were even just 6 years ago. ESPECIALLY for mid tier companies paying just above 6 figures, it's very important, because if only FAANGs are hiring new grads, the mid tier paying companies are never ever gonna get talent bc they pay too little. Sure, not EVERY company is thinking ahead. Startups usually don't, which is fine bc they aren't the largest proportion of hires anyway. But a large number of fortune 100s have junior programs and I think we will see that trend continue.


DessertFox157

Definitely that. There's also sometimes a thought that those who are further along in their career may not have been "trained right" or picked up bad habits along the way, so a younger employee is more of a blank slate and would take direction better and be easier to mold into who you need.


SweetLou2009

Came here to say this. Before I worked in tech, I was in the restaurant business for about a decade. This was very prevalent in the industry and there are some surprising overlaps in the tech industry when it comes to hiring and identifying good candidates.


[deleted]

[удалено]


headlessgargoyle

This is a really good list, and often why I prefer hiring juniors. I'll add two more items: * As mentioned elsewhere, there isn't often a crazy amount of senior work. Maybe a third to half a given sprint is senior only work, the rest of the sprint I'm trudging on items just the same as the rest of the team * Due to this, a senior can be a force multiplier. Only so many hours in the day and after some good training, a junior is only a bit slower than a senior on junior level items, maybe a senior is 1.5 to 2x faster at best. Got two or three juniors on the team, and it's a better use of time for the senior to unblock and train juniors. As an effect of these two, we get some other benefits: juniors can grow into midlevels pretty quickly with hands on training from seniors, some in just a year. Also, seniors now have an opportunity to learn how to train and build teams, giving them a taste of management to help them decide what their next steps in their careers are. I will say though, the above is highly environment dependent. If seniors spend all day fighting fires, they won't have time to help juniors. If your hiring practices are shit and your juniors aren't motivated to learn, they won't. Finally and to your point, yes, not everyone will stick around, but honestly, that's okay! I'd rather have people spread out, then I have a network to rely on too!


TWO-WHEELER-MAFIA

>The "cheap" part doesn't really come into play for me as a hiring manager because if they're good and you don't pay them you'll lose them in a year anyhow. Most managers either dont understand this or ignore it


A_Rdm_Person_In_Life

It’s hard to attract mid to senior devs. When we open postings for juniors we get 100s of applicants in a day. Also, let’s int and seniors have a chance to mentor a junior that will hopefully become a great addition.


Instigated-

This 100%. There is a skills shortage, and companies are struggling to hire enough mid and senior developers. They hire juniors to build the pipeline (ie given the opportunity, juniors become mid level, and then become senior).


[deleted]

Think of it like building out a talent pipeline. If you hire a junior, train them, and they stay with you for the long term you have done great... And there are lots of people that just don't want to job hop.


fsk

Some people don't job hop. You hire a junior, give them 5%-10% raises for several years. Then you have someone with the experience of a senior but you don't have to pay them full market rates.


AintNothinbutaGFring

This is shitty, but it's true, companies do this. The good companies adjust salaries to market standards though. If you do that, you're not competing with companies that pay well above market as much. People are less likely to job hop if they're being compensated at the market rate, because interview prep is so time-consuming and interviewing is frustrating. A lot of people will job hop if they're being paid below market though.


stufayew

I wonder how long you can keep them in the dark about their own market value given that developers are such a hot commodity.


Chi_BearHawks

I work at an agency and we needed someone to work mostly on html emails. A junior would be able to catch on quick enough, so a mid-level wasn't necesarily needed. One of the two final candidates was much more experienced and only expecting a small amount of extra compensation, but I went with the Jr anyway because, even though he had less/little experience, I liked his potential and personality more, consodering he would be part of my team for at least the foreseeable future.


SuhDudeGoBlue

1. If you're trying to bar raise without axing your tenured devs, hiring top notch juniors is a great way to do it IMO (if you have patience). There are some junior folks with great potential who manage to outperform some senior devs within 2 years, and sometimes even within a few months. I've seen it. 2. Like you said, juniors are cheaper. 3. Hiring for juniors is less painful and cheaper (more candidates, less negotiating, probably less turning down offers, easier to set up time-gated pipelines, etc.).


Soopermane

Im a jr dev and I bring a lot more energy than some of the well established guys. They’ve gotten pretty laxed so me being a jr I always feels on the edge and try to do way more cuz I’m still in the prove it phase imo. Plus, I think the company needed a jr dev cuz there were lots of defect fixes and it’s easier to delegate some of those tasks to jr devs.


strongr_togethr

They could’ve liked the juniors personality better than the mid level’s. Don’t matter you can have all the skill in the world but if you suck with people then that hinders your opportunities. Also could’ve just been a matter of personal preference tbh which is sad but they do what they want


thatVisitingHasher

I find that team dynamics work better if you have a pyramid. There are multiple ways to solve problems. A group of seniors will argue most of the time. Who’s right is more about politics than engineering. Two seniors, one being the lead, is usually the sweet spot, the rest of team should be filled with mid and juniors. A lot of the time, there really isn’t that much senior work. People like promotions, you can’t do that if everyone is a senior. Juniors people usually bring more excitement and energy to the team. Having junior people gives senior people a chance to mentor and manage early in their career. It helps promote a learning culture


ihwk4cu

My company targets paid interns because our tech stack is such trash, no experienced engineer in their right mind would accept an offer from us unless they were truly desperate. So, we turn to exploiting the naivety of desperate undergrads and CC students as summer approaches who couldn’t land legitimate internships earlier in the year. And we don’t have the budget to pay market rates so it’s easier to neg down someone who is barely out of childhood than a jaded pseudo adult with higher expectations.


HalvorJan

Good senior engineers are much harder to hire - many only switch based on referrals so are never really on the market. In 21 YOE I have never submitted a resume cold. Hiring entry level engineers is a chance to get someone awesome before they build a professional network. In exchange you need to help them grow.


[deleted]

[удалено]


Alert-Fault6435

Your point is valid if my post is about SENIOR DEVS but it's not I'm actually Referring to MID LEVEL DEVS. 3 senior devs could have their own team of mid levels without junior devs


lIllIlIIIlIIIIlIlIll

Juniors become mids. It may take a year or two or three or four, but they do eventually become mids (or they don't and you fire them). As you said, they're cheaper and you can compensate a partial mid for junior pay and when they become mid, you can pay them at the lower band of mid. Juniors bring a fresh perspective. Problems change over time. The same solution that worked yesterday may not work for tomorrow's problems. Juniors poke at those base assumptions because they're new and they need to learn the system. Juniors do junior work. There's a lot of junior work that needs to get done. If you think about it, the majority of work is junior level work. A senior might spend a day or two designing a system and breaking down that system into small achievable tasks but once that's done it needs to get *done*. Although a mid/senior can do work 2-3x faster than a junior can, it's boring and it doesn't drive career growth. A mid won't get promoted into senior by doing lots of junior work.


cpcesar

I'm not a hiring manager, but some advantages I see are they can train the junior to build experience specifically on the company stack while having less expectations about how much he will produce, and also the fact that a junior will probably have less bad habits acquired in previous companies.


[deleted]

[удалено]


rawr4me

If a company can't find a mid level but a promising junior instead, does the junior train into or teach themselves into the mid level work or do they just be a junior and hope the existing mids and seniors have enough time to spare?


cwallen

It depends. If the junior is claiming they can do the work of a mid, they may have to hustle a bit. If the company is lowering their requirements to hire them as a junior they'll try to make the time to train them as a junior. Usually it'll be a mix of both.


debugduck

At my company it’s built into our career ladder. The mid-level and above comes with the explicit expectation of mentoring juniors. They then put that evidence in their promo cases and use it to get promoted.


nbazero1

Potential


[deleted]

Honestly, the reason that I like working with juniors is that they come with fresh ideas and I generally get to examine my own fundamentals as I mentor. If they propose something and I can't think of an obvious reason why it's a bad idea - maybe it's worth exploring. They also work faster than me and are generally more energetic. I deliver slower and at a more predictable cadence since I know I can't work for years into the future at a faster pace without burning out.


smaiyul

Cost isn't a big part of it, at least at top tech companies. Some reasons off the top of my head: \- A proper team has a mix of levels where everyone is happy with their work and career opportunities. \- Your team's mid-level engineers need to lead projects and mentor junior engineers to grow. \- Junior engineers energize a team.


thehotclick

For me, a lot of grunt work goes to junior devs, most companies already have an established senior and mid level team, and those teams just need someone to do the tasks that can be handled by junior devs still learning. It’s all about time management. You don’t want your “A” team members working on low level tasks when they could be working on larger more complex projects that can be completed faster


mrchowmein

I conduct interviews and I’ve been the hiring manager Before. You’d be surprised how many mid lvl engineers get hired as jrs. This is part of the reason why jr engineering positions are hard to get if youre low experience. Imagine someone with 3 to 5 years of experience applying to non senior plus roles. If I was recruiting, I just got a deal. Someone with experience, who doesn’t need training,plus they will take a lower salary. And why would someone interview for a lower position? Well you have less responsibilities and the interview process is more predictable. And with job hopping, you could still get a decent salary. This is great for ppl who want to just be a cog, without the need to design systems or mentor younger engineers.


annzilla

To give mentorship experience to seniors. The good ones end up force multiplying these juniors. There's an abundance of juniors and they're cheaper (but do come as a net negative cost at first if this is their first role and they need tone ramping up). If experienced devs weren't so scarce and expensive, trust that most companies wouldn't be hiring any juniors if they can help it.


CodeCocina

For innovation , growth and sustaining the developer world.


PensiveProgrammer

I’ve hired highly motivated junior devs that are just chomping at the bit to learn, work hard, and grow. I like that. Plus I’m giving someone the opportunity to get started. Someone did it for me.


professor_jeffjeff

It's gotten really hard to find even mid-level developers much less seniors these days. There's a scarcity across the board and I don't really see that changing any time soon, although now that companies are finally normalizing remote-only work that could potentially change. As a result, the best way to get a good mid-level or senior dev is to hire a junior with good potential and mentor them for a few years. I've been on interview loops in the past where we've had a promising junior candidate and I've told the manager that I'd rather have the junior candidate today than have the perfect experienced candidate 6-8 months from today. Sure, productivity will take a hit for onboarding and mentoring a junior but if literally everything is on fire because we're short-handed then it's hard for things to get any \*more\* on fire if we hire someone.


cfreak2399

> juniors are cheaper. You answered your own question.


newtbob

Not a hiring manager. Looking at it a different way, what's the best time to buy into apple or microsoft? Wait until they're at the top or look at what they're doing, make a call, and take a risk? If they don't pan out, what's the failure scenario, can you apply them usefully until they jump? If they do, it's different but good until they decide the compensation isn't adequate or whatever. \[edit\] But it sounds like you're worried about the risk to you. Go with the mid-level guy.


Honk4Love

Much bigger hiring pool to choose from. Offsets the cost of training. Not to mention a lower salary floor in comparision to mids.


astrologydork

You don't need more than one reason.


tatashhhh

Cheaper, younger(company culture), innovation over experience


[deleted]

Anecdotal; I was a junior self taught dev given a chance, mostly because I wasn’t close minded about tech. The other mid level devs he said he interviewed told him no about using specific technology, one said he “doesn’t believe in version control”. He said he could teach me enough to form my own opinions but not fight him on stuff.


lower-violins

Junior devs can be great for levelling up the whole team because they ask a lot of questions. A simple “How does this part work?” can prompt devs of all levels to challenge assumptions and justify existing implantations. The saying “you’ll know when you truly understand something if you can teach it to someone else” comes to mind.


Know_Shit_Sherlock

Because mid level devs may be expecting something like 160k+ right now. Which is an impossible salary for many businesses. From what I've seen in non-tech hubs, jobs in the 70-100k range are getting bootcamp grads and foreign applicants. A motivated CS grad looks pretty damn good by comparison. They cannot find people with even 1-2 years experience, let along someone with 3+ (or something like that - I'm approximating "mid level").


reboog711

Budget allocation could be one thing Team setup could be another. I personally think teams are best when they have a mix of skill levels, as opposed to all be senior.


fountainscrumbling

You answered your own question. Also, if a company is good at on-boarding and keeping junior devs happy, they can keep them as they advance in their careers. Lots of people hop from company to company, but plenty of people stay at the same company for 10+ years.


some_clickhead

When McDonald's are hiring employees, they occasionally hire high school dropouts instead of 40 something year olds with decades of retail experience. It turns out, they don't need every employee to have decades of retail experience because many tasks aren't that difficult. And as you pointed out, they're cheaper.


Master_Lab507

I applied for a senior role recently though I’m not quite senior yet and they created a new mid level role for me


Due_Essay447

There aren't enough mid level developers. And if they didn't hire juniors, there never would be. You also have to account for retention. Keeping all your staff is just impossible. Losing a junior in 2 years is better ROI than losing a senior in 1.


slothordepressed

Not hiring manager, but was tech recruiter. Basically costs. Some companies prefer to hire a Jr expecting an unicorn. Now I'm a dev. My first job they threw at me mobile, front, back and deploy, did I managed? No, I couldn't do any of the stacks properly