"Entry" means "to enter the workforce". It means you have pre-work experience such as a specific degree, speak a certain language, etc.
If you advertise an "entry level web development" job and I just boot camped for that, I am qualified and will apply.
If you want "Junior Developer", say so.
(Comment by someone that this is a gimmick to reduce salary sounds pretty right on.)
Sadly title inflation is also a thing.
"Senior" implies "Highly Experienced" meaning "lots of years of experience".
Whereas it's completely possible for a person with 3-4 years of experience to be a "Very Good Engineer" within their specific domain and be as valuable, respected, listened-to, etc. as a "Senior Engineer". It doesn't happen often, but it happens.
If we had titles more like "Apprentice", "Journeyman", and "Master" Software Engineer, then we wouldn't have this issue. Someone could be a Journeyman after 2 years or 4 depending on how rapidly they progressed through their "apprenticeship" phase, and to "Master" as soon as they had completed sufficiently complex work to have completed a "masterpiece" equivalent.
Not necessarily. Medicine has "Senior Resident" or similar in some countries as the last step before becoming an independent physician. Law and finance have senior associate before junior partner.
https://en.wikipedia.org/wiki/Compagnons_du_Tour_de_France if you don't know what it is.
Slightly weird mapping of the traditional Establishment to our industry. Their home page includes items such as "Capercaillie Shoot" (not clear if this involves real grouse as it's in Essex), and "Report on the Funeral of Brigadier Tim Hackworth OBE PhD"
I'm pretty sure the shooting is just clays, and not live birds.
Lots of years of experience translate to having a proven track record of delivered value, along with management skills and experience of failure, things that can't be substituted by talent or knowledge acquired from reading about the works of others.
> a person with 3-4 years of experience to be a "Very Good Engineer"
Not the same thing — this is actually the same problem as with hiring practices that people love to hate. Good college degrees, open source contributions, algorithmic exercises during the interview, etc... are all designed to prove your worth. People don't like you for what you are, because you have to show them what you're capable of first. And with 3-4 years of experience, you can slap that "Master" label on your job title, but without being able to show something for it, people will just laugh at you.
Also this trend of disrespecting the elderly is nothing new. Ageism is a thing and your opinion is actually in line with what the entire world is already thinking. Younger means cheaper, more prone to abuse, to working long hours and for many tasks just as capable as a more expensive senior.
Of course, this is beneficial to young people, but the tragedy is that it doesn't last. You'll be playing a whole different tune in 5 years max, either because you'll end up competing with people that are 5 to 10 years younger and cheaper, or because the bubble will finally burst due to automation, leaving this sea of STEM graduates out of a job, just like steel workers in the nineties. We are automating ourselves as part of our job description, so it should be no surprise when it happens.
3 years is minimum for getting close to being competent. I would argue that before that you will deliver very little.
These levels are not exactly transferable necessarily.
You should be able to trust that an experienced developer like this would be able to adapt to newer methods and API.
If you take language out of it, the experience is easily transferable.
The problem is everyone thinks their project/product is special and they're inventing something completely new. You're not. Sorry. This is software where everything old is new again.
One should not expect that people use every skill they have at every job they do.
> "c : a worker or artisan qualified to teach apprentices (see 1apprentice 1b)"
> "d (1) : an artist, performer, or player of consummate (see 1consummate 1) skill (2) : a great figure of the past (as in science or art) whose work serves as a model or ideal"
If there's going to be a new made up system for standardizing and measuring the proficiency of software developers, then we may as well make up new words too that don't have this baggage.
This proposal is explicitly not making up a new system, but rather adopting an existing one.
We don’t call “fishermen” “fisherpersons” — that’s just silly. You can have female fisherman.
Your comment after this one began with "You can fuck off if". The vector formed by these two points leads toward getting banned here. We've already had to ask you many times, and have cut you a ton of slack on this site.
Please use the site as intended—for intellectual curiosity; please don't be uncivil; and please don't use HN primarily for political or ideological battle. That's not too much to ask, and most users have no trouble getting there.
The point of journeyman in connection to a trade is as a point on a scale of relative skill and has no meaning in the place of determing the accidental characteristics of the wielder of the title EXCEPT relative competency in the trade.
"Man" has been a catch all for human practitioner when who the practitioner is isn't essential to the context.
The title of journeyman elevates whomever bears it in the eyes of a trade. It grants equivalence no matter whom it is applied to. If you wish to call yourself a journeywoman, do so. Don't be surprised when the rest of the trade still refers to you as a journeyman. Tools don't care who wields them. And finished works' quality depends only on skill. Not gender.
Hate to see of what your views on Bachelor's Degrees are.
If however you would just call it like that to make it female on purpose and out of defiance... Then I guess I wouldn't accept it.
61% of "Entry-Level" Jobs require 3+ years of Experience
In the Bay Area culture, 3 years is enough time to jump jobs once:
year 1 = figure out how to navigate tech corp
year 2 = figure out that it's a sh!t show.
year 3 = jump and find greener pastures. repeat year 1.
And my lifelong experience is that such pepole have pretty good careers, better then humble more self aware people.
As an aside, a friend got listed with the title cosmocrator (ruler of the universe, when translated directly from greek) in the phonebook. All it took was for him to request it when they asked for a title, and, when asked what it was, reply that it was a form of kinesiology.
All in all, you probably should not but to much stock into titles. Even less so, if they are not protected.
LinkedIn is full of people who have mysteriously sprouted a Senior prefix that they definitely didn’t have when I was at the same company at the same time. So it probably is self-granted in most cases.
I am confident in claiming that title was dependent more on confidence then skills. You got it basically for never admitting you don't know something.
As a qualifier, it is a demotion from “Developer” alone. A Junior Developer is less than all the other ordinary, plain old general Developer roles.
It’s basically a paid intern role.
The only people who would ever accept such a title are kids who don’t mind being marked, appropos of nothing, before first impressions are made, as a lesser subordinate, untrusted with serious decisions.
When a recruiter, hiring manager or HR contact offers a Junior role, it means you get paid less.
In a world where business cards and email signatures serve as pretext for introductions, you see a title with Junior in it, and it reeks of green college grads.
I'd be so, so interested to see the breakdown here, and what causes these types of numbers. Are there just enormous numbers of applicants for every job? Are people applying for jobs they aren't qualified for? How does this compare in tech vs the rest of the job market?
The signal/noise ratio must be absurdly low if this is possible.
I recruited for several years for my companies too. First thing I noticed, there is huge variability in CV for each country. When I receive a CV from an indian person (from India), I don't know if I should expect 100% lies or what, even from qualified seniors. On the other end, I could put my hand on coal if the same CV was written by most germans. Which is bad, because the CV or cover letter become essentially useless as a metric.
To reduce the number of applications we introduced simple tests to submit along with the CV. It does wonders, but I personally hate it. As a senior dev, I keep asking: would I apply to my current application? I have to answer that no, I wouldn't. I have plenty of public projects to investigate my abilities if needed, and I do expect some minimal amount in investment from both parties when hiring.
We also raised the requirements from applicants ridiculously, essentially expecting them to work on core features from tomorrow. Again, completely unrealistic. And again, by our own wording, I would be afraid to apply. We are definitely selecting over-confident candidates (or desperate).
And it's sadly also true that the industry has no apprentice jobs anymore, although there is plenty of need. There are some career paths where I would jump ships despite my lack of expertise to follow my interests. Starting from zero doesn't stop me, but there are simply no opportunities: junior jobs are not really junior anymore. They are simply paid less.
Looking at it from the other point of view, are you getting enough candidates that you are comfortable with via your current application? If so, the question becomes whether it would be enough of a benefit getting "you" (people like you) to apply to your current job... vs the cost of having that many more people to filter through.
Just like the code you deliver, the application process doesn't need to be perfect (because being perfect has a large cost associated). Instead, you have to weight the tradeoffs and pick the solutions that best match the resources you have available to the outcome you want. You need "good enough" (I hate that term, it sounds like "bad" to my ears, but it's literal meaning is correct here).
This, in turn, results in a process of exclusion during the process more than actual evaluation (which then begs the question: why put such high requirements?).
I'm pretty sure we're discarding individuals which are just too afraid or see themselves too conservatively. I'm not afraid to say that I ended up in my position by pure chance, and probably wouldn't pass the hiring method we currently use, despite being here for quite a long time.
Be careful about going there. Discrimination is illegal & unnecessary.
Let me reinstate that also this is not universal. We had very good candidates which didn't inflate the resume, thus my point that I really cannot look at the CV by itself. This is very detrimental for both.
I took "germans" as a stereotypical example here. Thinking back, most qualified applicants anywhere in EU are in a similar ballpark. I would say a small amount of inflation is common, but senior applicants generally match much more closely the qualifications they presented. I didn't have many applications from other eastern countries to say anything else.
I'm also not an HR guy. I just participate in the hiring process when the need arises.
I've been a part-time developer for three years (and worked full-time on top of that), and I'm looking for a full-time position. I gave up on tech after applying to 500+ jobs and getting three interviews and zero offers. The closest I got was a consulting outfit in a small city in the Inland North, where one of the interviewers got hostile about my major (philosophy) and eventually rejected me over it.
But even now that I'm only applying for positions that just need warm bodies with degrees, my ratio of applications to phone screens is upwards of twenty to one, and every phone screen I've gotten in the last month has rescheduled last-minute on me, sometimes more than once. And I have to put up with shit like getting rejected at the door because the interviewer doesn't like my [perfectly ordinary and unremarkable] shoes.
How in the world am I supposed to find the time to put effort into applying for hundreds of jobs?
Sadly, the hiring process for developers has turned into not much more than hazing.
FOR LOTS OF APPLICANTS
Send every single applicant a nice, warm email with a link to a coding assessment. Doesn't have to be anything particularly in-depth: just something that requires an hour or two's work from the candidate.
Result: all the people who put slapdash applications together will self-select out at this stage (you won't even hear back from them) and you don't have to send rejections. This will probably eliminate 95% of candidates right out of the gate for you, and when you have 500 applicants in a single month this is going to make your job a lot easier. You'll be left with 25 people who are genuinely interested and, depending on what you're looking for, you might have 10 that are worth interviewing.
IMPORTANT: for the relatively small number you reject at the assessment stage, you should send them some real, and reasonably detailed, feedback as to why. This will generally take around half an hour per applicant. People don't do this out of fear of getting into an argument with the candidate (and, of course, because they don't have time): in practice this seldom happens, and can be diffused quickly when it does. Most candidates appreciate the feedback and, key point, you won't start dehumanising applicants and turning yourself into a worse human being.
FOR FEW APPLICANTS
If you're not doing an up-front assessment, which we don't at the moment because we're a relatively unknown company so we want to make it as easy as possible for people to apply, send everyone a nice email inviting them to a 20-30 minute telescreen.
Your email should lay out the format of the telescreen: we'll spend some time finding out more about your experience, and do a screenshare (or Google Doc share) on a short programming task.
Result: all the lazy or uninterested applicants will again opt out, doing most of your work for you.
- In both cases you can focus your finite time and energy on the better candidates, rather than on sifting out the worst.
- You can give every applicant a more positive experience overall (think how many times you've heard the complaint, "I applied for X job and the company never even got back to me"). You also avoid ever having to send out those crappy two-line pro forma rejection emails that just about everyone hates.
- It'll keep you more positive and energetic because you're not spending loads of time having to be critical and negative about swathes of applications, and the people you do end up interacting with, you actually have the time to invest in ensuring that they have a positive experience, whether you offer them the job or not. This is hugely important because I think, of all the jobs I've done - and, granted, this does depend somewhat on your personality and temperament - recruitment is the one with the greatest capacity to turn you into the kind of person you wouldn't like very much (I realised it was happening for me when I did a long secondment in recruitment for a previous employer).
- By giving everyone a positive experience you'll gain a better reputation for your company, which should translate into attracting better candidates. Certainly, the other way, word travels, and if you offer a ghastly candidate experience people will be put off applying. If you're Google you can get away with it because so many great people want to work for you regardless of how drawn-out and overwrought the process is, so it doesn't matter that some great people will be put off because of the process (still I don't recommend it, and I question the value of all the hoop-jumping). If nobody's heard of you, making the process straightforward and pleasant is the way to go.
 This might sound cynical but you can totally automate this process, and if you're getting that many applicants it's probably worthwhile: just make sure the emails go out within business hours, and that there's at least a few hours lag between an application being submitted and the email response going out, so it feels like it's from a human being. Also, and this goes without saying: use the applicant's name. Lots of ATS's don't (or didn't) have APIs, but since you'll only need to target (say) Firefox, browser automation with something like Selenium can work really well here.
One thing I should have mentioned as well is how I handle referrals, because it's quite different. I always skip the assessment or telescreen in favour of some sort of face to face:
- Invite them in to the office, have coffee, find out more about them, let them meet some of the team, show them what we're working on, maybe have lunch,
- Have a more low-key meeting in a cafe or pub.
In both cases it's about getting to know them better and giving them the opportunity to figure out whether they're really interested in the role: i.e., not a traditional interview. If they are interested, then we go straight to a technical interview.
The above is important because it's a key route for more senior hires. As a result, certainly at the beginning of the process, it's very much tailored to the candidate at an individual level.
Look at the hiring process at Apple or Google for examples of how to do it well. Apply; respond to applications with a request for a phone screen or a rejection letter. Do the phone screen. Those that pass, do a technical interview via FaceTime, then those that pass that, send them to the final round. If you reject anyone during the process, notify them immediately.
Be respectful to the candidates and you will end up with better hires. Don’t treat them like you are doing them a favor: you aren’t.
I'm not wasting anyone's time. Nobody has to do anything - you can just ignore the invitation and that's fine. I'm certainly not wasting anyone's time any more than they're wasting my time submitting a subpar application for a job they're not really that interested in.
Maybe you were having a bad day but, in case not, let me say: nobody owes you a living. Like it or not, you need to earn it.
nailed it. is that really so much to ask?
Thing is, that doesn't scale too well. And when you reach the point when it doesn't, you need to do something else - particularly when you have a day job to do on top of recruitment.
I'm really sorry you had that experience. For what it's worth I've sat on the other side of the fence: spent a couple of hours working on something only to hear nothing in response. It sucks.
I hope I made it clear above, but my very strong recommendation is that if somebody has sent in a solution to a coding assessment, then you should be taking the time to give them personalised feedback rather than some stock response. If that didn't come across then I apologise.
this is my experience - and why i don't do them out the gate. Because there's a strong chance my work won't even be seen or reviewed - and i have had this happen enough times to know that i should just say no.
And yeah, I have a job in software development.
Great: I'm really pleased for you, and I hope you have a fulfilling career. But all you're telling me is that if you don't respond to the invitation I've sent you then you don't want the job I'm advertising that much. And guess what? I'm selecting against people who don't want the job I'm advertising that much.
Now here's an interesting thing that I've spotted before on HN: the silent majority have upvoted me, but a few commenters have taken me to task. Clearly I'm not suggesting that the majority are always right (the majority of people used to think the world was flat and look how that turned out), but it's certainly worth further consideration.
In reality, while software development skills are in high demand, there's also a very high supply segmented across different skillsets and industries (and yes, in lots of industries being a software and domain SME is important). Companies have had lots of success using take home projects or short assessments for technical skills like HackerRank to separate both the wheat from the chaff and remove those who don't want that particular role that much (as you said).
At the moment we get few enough applicants that I'm fortunate enough to be able to talk to all of them. What has surprised me is that a relatively high proportion simply don't respond to that invitation. The numbers aren't yet anywhere near high enough to feel confident here, but it does seem - at least superficially - like there might be a correlation with weaker applications here.
Be aware that most of those are basically a scam.
Trying to force you into some random job just so they can get the provision.
Thanks. Anything concrete or specific to add to the discussion?
You can fuck off if that’s is your first contact response.
I’m interviewing YOU just as much as you are interviewing me. There is no shortage of companies hiring. There IS a shortage of quality candidates. I don’t need your job — but you do need developers. I am not going to invest 1-2 hours of time on some bullshit variation of fizz buzz or some equally ridiculous and real-world irrelevant academic game from HackerRank.
If you can’t be bothered to have even a quick 10 minute conversation, I can’t be bothered to do your stupid coding exercise.
What I'm interested in is candidates who really want this job. Those people are the ones who will put in the effort.
With all of that said: "You can #### off if that’s is your first contact response." I suggested this in response to your other comment: maybe you were having a bad day. Nevertheless, taken at face value, that remark perhaps demonstrates something of a sense of entitlement. Entitlement is something I aim to select very strongly against, because it's absolutely poisonous in a team environment. Food for thought, if you think it applies.
Many people feel entitled to being treated respectfully by their (prospective) employer. Asking people to invest hours doing useless work (which, as others have indicated, they may not even receive feedback on, just a rejection) just to get a chance at an interview, can easily be taken as a sign of disrespect: clearly you feel your time is worth so much more than that of a potential employee that you ask them to invest hours before you'll invest minutes. The potential employee is treated as a beggar rather than a trained professional.
> Entitlement is something I aim to select very strongly against, because it's absolutely poisonous in a team environment.
I'm sure those who feel entitled to basic respect are glad you are selecting against them then :)
I'm really not sure how you've made the leap from me trying to help people who are swamped with applicants (by taking action that gives every single one of those applicants a fair chance) to a suggestion that I'm not treating people respectfully.
Sure, you know that you're going to put in some effort to look over the solutions and provide feedback (but even then you probably won't spend nearly as much time on giving that feedback as the interviewee spent on their "audition"). As others have indicated, not all employers will put in that effort, and as the applicant you can't tell in advance whether you will. Or perhaps you will look at the code, but will instantly reject their code based on indentation (tabs or spaces?) or brace style, or choice of language ("lol Python, real programmers use Ruby"). Because you aren't yet invested in the candidate (after all, you've only sent them the same email you've sent the other 499 applicants) you lose nothing when you're an asshole, while the applicant loses the time they invested (and they won't be able to reuse that code assessment on their next job application).
> I'm really not sure how you've made the leap from me trying to help people who are swamped with applicants (by taking action that gives every single one of those applicants a fair chance) to a suggestion that I'm not treating people respectfully.
Telling applicants to send you a picture of themselves dressed as a clown and selecting the funniest 10 for an interview would also be an effective way to weed down applicants (many wouldn't respond, so clearly they didn't really want the great job you're offering), and one could even argue that it would give every single one of those applicants a fair chance. Would you agree that such a thing might nevertheless be seen by some as disrespectful?
I'm not saying requesting a coding assessment as part of a job interview is always disrespectful, and I think most people would agree with that. But, as you may have noticed from the reactions to your original post, an unpaid coding assessment that must be performed before the applicant gets a chance at an interview is a bit more controversial.
They all look the same.
There is now way to tell if a position is any more than remotely relevant, because job postings are all the same.
If you want a group (prospective employees) to sift itself (only apply to jobs they want or are qualified for), you should make a concerted effort to give them the information needed to do that. Unfortunately, no one really does.
Recruiting sucks, so let's focus on making it better, rather than just complaining about the userbase.
Not the ones you 'don't like' - the ones that don't even make sense.
That process of filtering out folks using the blacklist should be automated and the blacklist should be public.
I wonder if that'd make recruiting jobs almost pointless in a large number of cases however. It sure would make one think twice about spam-applying, knowing you might get blacklisted for spam.
With your logic, ending slavery in a time when it was legal, would be a PR disaster, and illegal in most jurisdictions.
Oh wait... It may even lead to a civil war. Oh wait... That has happened... Oh wait... It was actually a good thing!
That's how progress gets made - by changing existing norms and laws because they suck. Recruiting AND job searching at this moment clearly sucks. Which's not to say blacklisting is THE solution. It's A solution, which's a lot better than nothing, at least it gets the conversation going.
2) Yes. Half or more of the applications I've reviewed are totally unqualified. Either they ignored the requirements or fudge it and flop on the interview.
3) Tech has even more noise than my personal experience due to higher pay scales and increased interest in "working in tech" (without any personal interest / passion in technology)
I mean if you are calling something "entry level position" and have "requires 3 years experience in the field", I'd expect people to apply anyway. I remember when I was fresh out of college all the entry positions I saw required several years of experience. If you don't apply to those positions then you really aren't applying to anything.
Same. That struck me as particularly BS'y. I asked career counselors at my school about that and they said to "embellish" my background a bit, but not to lie. The specific advice I got was if you worked as a developer on a short term project a year ago that would count as a year of work. If asked about it the advice was to just explain what you really meant. It made me feel uneasy because if seemed disingenuous, but I went with it because I needed a job.
This made me really question what does a "year of experience" really mean? 60 Hrs/wk for a year is not the same as 20 Hrs/wk for a year. If you could use a month of work a year ago as a year of experience, what else could you stretch? At that point you could question what does anything really mean on an application? If it has super high qualifications, how could you take it seriously? You can just rationalize away anything! Can't you? 4+ years of experience? I basically got that. 2+ years in some specific programming language? How different could it be from C++? I got the basic concepts down, I can figure out the rest, just give me money!
You miss 100% of the shots you don't take and the worst you will hear is the word 'no'. You need a job to pay off the loans you needed to get the degree to apply to the jobs in the first place. If experience inflation is a reaction to an insurmountable volume of applications then what businesses are really doing is filtering out the honest people.
I would love to see job postings that require 2,000+ hours of experience for junior level or 10,000+ hours for senior level.
Figuring out skill level is hard. And no matter what job you are at and skill level, it requires training. But if we're talking junior positions, that means "we are going to teach you." I feel like that part is being lost.
Common advice is that job posters put insane requirements on their posting because they don't really expect an entry level applicant to have 15 years experience in HTML5, Joomla, C++14, Bootstrap, Hypercard, Quechua, nuclear physics, and Go, just a little bit of exposure to half of them. It's not surprising that unreasonably underqualified people respond to job postings with unreasonably high expectations, and that all job postings end up not being taken seriously.
This is what you put in a job advert when you want to hire your mate who matches that description but feel obliged to publicly tender the job instead.
Can I not work in tech without being passionate?
Nobody goes to work at Facebook or Google thinking "wow, I'm so passionate about adverts and tracking, I want to build a world with more ads and tracking in more places". It's normal not to be passionate about your work in that sense.
However, some people find computers frustrating, stupid or boring. Such a person probably wouldn't enjoy a job working with them all the time - and it's difficult to build the skills that let you advance your career if you're averse to or bored by practising them. You need to be passionate in the sense of finding the work sufficiently non-loathsome that you can readily motivate yourself to do it.
That is a major abuse of "passion". While the original definitions are even stronger, something you are "passionate" about is something you actively seeking out to do. Something that is merely "sufficiently non-loathsome" is not a passion.
That is a major abuse of "passion".
I would like someone who loves their work so much they do 150% of the expected amount of work, freely chooses to stay late to make the Foo they're working on the best Foo the world has ever seen. Someone I can promote, and trust with more responsibility and less supervision.
But I'll tolerate someone who does 75% of the expected amount of work, because I'm realistic about the hiring market.
I had a job where I did this. Know what the employer did? He whined I wasn't doing enough, and gave me more to do then expected me to stay even later to do it.
I was eventually spending more time at work than I was at home - I no longer work for free. If an employer wants extra hours out of me, they pay or I head home at clock out time.
Employment isn't about your dream being fulfilled, it's a commercial agreement between two parties where one agrees to pay the other for time spent at the workplace. I don't live to work, I work to live, and I have other stuff to do.
On my death bed, the one thing I can guarantee that I will never think is "I wish I'd worked an extra evening for free on that project for my employer." It's far more likely to be "I wish I hadn't worked that evening for free, so I could have seen the sun set just one more time."
"sufficiently non-loathsome...motivate yourself to do it" is a far cry from passionate. Tangentially related @sarahmei on twitter wrote a thread about passion in tech. IMO she nails it: https://twitter.com/sarahmei/status/921366047122268165
Which is a shame, because her point that filtering candidates based on their dedication of personal time to tech is discriminatory is valid.
she conflates passion with external signals like
"spending a lot of time on personal projects"
If someone tells me they're passionate about embedded electronics, I'll ask what they've worked with - arduino?
raspberry pi? esp8266? atmel? pic? mbed? - and what they've done with it.
If they haven't used any of them, or they've barely used them, are they really passionate?
It's funny really because I thought I was perfect for software development as a teenager. Already knew how to program, spent a huge amount of my free time on a computer, good at maths and sciences in general, etc.
Once I actually got into software development I found the whole thing rather irksome. The company I worked for was a great place to work full of really lovely people, free lunches, paid internships (yay NZ), etc. But software development? Nope. Awful industry. Computers are shit.
As soon as I got out of software, I immediately found my interest in programming as a hobby come back. Unsurprisingly people don't really like doing something as a hobby when they're paid to do it for 40 hours per week already.
I sure as hell wouldn’t hire someone who has no interest in what my company is doing and that level of interest would have to increase relative to the role.
What tends to happen is you get very slick operators who don’t produce anything because they don’t understand/don’t care and all they do is get information from A spin it in a way that makes them look fantastic and push it to B.
Given enough people like that in a tech org it’ll collapse.
(Also, it's an insufferably pretentious question, even if not actually illegal.)
 E.g., it might be legally acceptable for a role in a religious organisation.
What do you stand to learn about the quality/fit of a candidate from the question "why do you want to work with us?"
They could give a 100% bombshell answer and yet not at all fit the role.
And yes, a person who'll very occasionally stay late and pitch in when the whole team is crunching on something.
It takes time to learn a topic, that's a form of passion - a drive.
That's not to say you have to burn all hours on it tho. Which I think is what you're assuming there. That's honestly somewhat unhealthy and only super passionate people (and lucky ones at that) can do that for any length of time.
One requires motivation, but that motivation does not necessarily have to be interested or passion.
That’s what motivated them to learn. I doubt that’s what causes them to stay. If it is tho... That’s enough.
You can, but from the employer's perspective many markets have more applicants than positions. The employer can choose those who are closer to the ideal employee. One of the qualities of such an employee is often someone who throws themselves with passion into doing the job.
Put another way, why should an employer with a stack of applicants pick those who aren't as motivated or qualified as others? That is why entry-level positions require 3 years of experience.
Tech is not something special, you can lean it like anything else.
If they want 10 years of Ruby/Rails experience with a focus on performance/scalability, maybe your 5 years of Python/Django is not applicable.
But if they want 3 years of Ruby/Rails experience and you've got 5 years of Python/Django, and feel comfortable with the transition to Ruby, absolutely you should apply for that position.
Be upfront about it and be prepared to demonstrate your ability, but that's what the interview is supposed to be about in the first place.
We did an analysis on this awhile ago, specifically about # of days to get a job, but it also has some analysis about # of applications:
The trouble is, they so not like to give out salary brackets.
Something to note there is, how much attention is being paid to each listing. For the jobs you've applied and gotten, you probably were a really great fit.
Having reached a point of being on the other side, looking for people to hire, I think there are really warped perceptions all around. If your hiring, you aren't swamped with great candidates but with resumes. Basically, most resumes go in the trash, but because most of them are hollow, there was nothing there to start. If you're actually skilled and can demonstrate it in any way then its far easier to find a job. I think most of the people who apply to 200+ jobs to get one either are not skilled or don't know how to demonstrate that they are.
> If your hiring, you aren't swamped with great candidates but with resumes.
is exactly the case for us. 90%+ of them fail a test where each question is only slightly more difficult than FizzBuzz. Some of them don't even attempt to answer all the questions.
I have little doubt they're the ones sending 200+ resumes out, hoping someone bites.
Especially if you start the next job hunt while still employed. That's an important signal to your employer, that someone else was willing to hire you. It also helps to ensure you're not desperate, because your next paycheck is not hinging on the current interview.
This has led me to actually be nervous about the prospect of having to interview, because was my success a fluke? Or had I found great fits for jobs? Both interviews I remember getting in to quite technical but off the topic conversations with the interviewer so I presume that was the success bit?
The entry level job market is paradoxically the hardest due to the competition and limited opportunity to differentiate.
My first three job searches out of college required several months with 150-200 applications each, and I was an ivy league grad with a finance degree.
It was really tough to get an interview without knowing anyone. I initially tried limiting my search to positions and companies I was passionate about via career websites, but my hit rate of even getting a response was ~5%, so I realized I needed to up the number of applications to get a reasonable pipeline of opportunities.
Thankfully I've passed that point in my career and have specialized, so my last two positions have been through recruiters that approached me. I won't forget how stressful the early career can be though.
I'm at ~700 jobs and only had 1 offer that was pretty bad. (Optics and/or Bio-tech)
70 jobs? 700 applications? Or am I completely mistaken and you are a much more well-traveled person than I am?
Granted bio-tech is a bit different of an environment. There are a fair few certs you can get. Also, I recently found out that a few large companies only hire interns and the job postings are just for legal compliance. That info felt like a punch in the guts, sooooo many hours wasted.
When I was in highschool I did not understand that it was really about who you know (I was homeschooled, so I didn't have a school network to reach out to for jobs), and went applying for typical highschool retail/fast food jobs willy nilly and never got an offer. It's because I was lacking someone who could "intro" me in to the organization. Now I can't really imagine trying to apply for a job cold.
My last half dozen gigs have taken 0-2 emails to secure. The 2 was a genuine job search where I identified two possible fits and reached out. The zeros all were people seeking me out.
Contrast that to the guy applying for your Sr. Developer position who can't FizBuzz. He has applied to 1000 such jobs already. Every one he's seen. All over the country. Every once in a while a company will make the blunder of hiring one of those people (they make up 99% of the applicant pool, because they are always on the market, whereas skilled devs are not), he will skew your number.
So yeah, that guy averages a couple hundred applications before scoring.
But you don't want to emulate his tactics, or you'll find yourself lumped in with him and filtered out of every job you apply to.
Until very recently I was frontend lead for a fairly large UK site, and one of the best hires I ever made was a 32 year old former-recruiter with no commercial programming experience, and no CS background.
However it was far from plain sailing. We had mutual friends and whilst chatting in a pub, and they won me over with their passion and enthusiasm for what I discovered was their dream job.
I brought them on as a jr, into a small talented team with measures in place to ensure there was the opportunity to learn on the job and appropriate tasks to work on, but it quickly became apparent they were out of their depth. I worked on mentoring in work and and pointed them in the direction of stuff they might look at outside of work to dodge the bullet.
My work started to suffer because I was spending so much time mentoring, fixing code that had become irrevocably tangled and trying to manage a very stressed & frustrated jr dev.
Eventually I had no choice but to move them into a different team where the work was less technically demanding and more html/css focused, with a small salary cut. Everybody was disappointed with the situation but the alternative was letting them go.
Three years later, that dev rejoined the core engineering team a more experienced developer, passion intact, and having learned their trade in a lower pressure environment, comfortable they could handle the role. I'm incredibly proud of them for the way they handled the situation and am absolutely confident this time will be a success.
That said, it'll probably be the last time I hire a dev with zero development experience. As an investment in an individual it's incredibly worthwhile, but despite the happy ending, the whole experience was fairly disastrous.
An understanding of basic concepts obtained in the ways described above is very different from 0 experience. And on paper to a recruiter, what I've listed above counts as 0 real-world business experience.
edit: it is nice to hear this situation worked out for you though!
Hiring college grads without a lot of real world experience gives you the opportunity to mentor and train in good methodologies that I find older developers will refuse to implement without incessant fighting.
It is more work initially but the long run payoff has been fantastic in my experience. When you manage based on yearly expectations that are attainable life is so much more enjoyable.
The biggest key is management and upper management buy-in. Sadly that's exponentially more difficult to get when most places see IT as a sunk-cost instead of an opportunity to deliver more efficient workflows internally and externally.
I'm on the fence about working with developers that don't have college degrees. The gaps in their skill-set frequently causes issues no matter how much experience they've had.
The smart ones pick it up very quickly, so it's just part of the learning experience. The downside is a lack of structure to most things as well. Learning everything through online blogs instead of deep dives into the tools and frameworks they're using. Also a more limited skillset across technologies. They tend to be focused on the one answer they've learned, not having the time typically to branch out to other tools.
I say this as a mediocre developer myself who has many shortcomings. Although I'm getting away from development as much as I can.
It's possible for a self-taught to developer to learn a lot but stay in their safe bubbles of expertise, work or school can push you out of your comfort zones quite frequently and force you to expand your horizons. In a way that you might not do for yourself, at least not all the time.
Individual experiences may vary. I'm not saying there aren't some amazing talented self-taught programmers just you have to be very careful in assuming that they all are.
1. Many many self-taughts (ST?) aren't joining coding for passion, they are joining because they want to change careers and think coding is easy. They think this (IMO) because it's famous for hiring non-graduates.
2. They then proceed to join groups like FCC in massive surges that closely correlates what's happening in the job market; which doesn't fuel me with confidence in their conviction to become a ST dev. It's kind of like joining the gym Jan 1; if you wanted to be healthy why wait until your NYE resolution. So like a gym 90% of those that join then go silent in our group nearly immediately.
3. I'd say about 1-4% of those who join even complete FCC and of those I genuinely believe they've all found success. Ironically FCC draws in a ton of weak links because it's free, but also because it's free very very few of us ever finish and get a certificate.
If I had a chance to hire an ST that was junior I'd definitely be curious about their story. Their story will tell you so much about the 'man' they are:
- Did they go balls deep and pay $15k+ and give up sleep and life for 3+ months? What did they do afterwards? What did they do before?
- Did they chip away at FCC for 1-2 years building out a portfolio, FINISHING at least the FE certificate?
You see where I'm going here? In my life I've never met someone who did truly well without an internal desire to get it done and that can't be taught. The real advantage of an ST can be their resilience and determination to do what is needed to succeed and if you ignore that amazing skill/asset just because he's without a paper then it's definitely a mistake.
So while I'm not advocating for STs over Grads, I am saying they can be very special and valuable assets that are worth taking a long look at when you get their resume.
You'll see more of me soon; I'm quiting my job May 1 to focus on finishing my skills to a commercial standard, which I've waited two years to do; I'm finally near the finish line and I can't be more excited to be going full time on my passion.
This was written on my phone; so apologies if I'm vague, impolite or grammatically a fail. It's hard when you're trying to work and quickly add two cents of value on a topic you love.
I'm sure people in HR have seen more than their fair share. Folks who have any visibility into bootcamps or anything probably see it. I think programmers as a class can be a bit insulated from the reality of how many people make the attempt or try to get jobs they're patently not qualified for relying on the potential for self-taught, non-degree'd, programmers to still have a shot.
Also, we're hiring. :) If you're sick of spending all your hard-earned education and experience to help Facebook, Google, Amazon, etc. increase ad CTR by 0.001%, we're working on some pretty cool technical problems. Just email me at firstname.lastname@example.org.
j/k, but I am curious how much time you think is average for a job search in terms of both hours spent and days/weeks before finding something. You talk about "time and stubbornness" but I'm interested just how much time and how much stubbornness. I realize this varies widely by industry, but I would expect there's some sort of white collar average.
To your specific Q, yes, it does vary dramatically by location and specialty. In fact, we did an analysis about exactly that a few months ago! Even for white-collar positions, it ranges from ~14 weeks (software engineers) to ~90 days (HR specialists) to >>90 days (mechanical engineers):
When you dig in, even specialties that take the same time have very different reasons. For instance, mechanical engineers see a pretty high interview callback rate to job applications, it's just that there aren't _enough_ mechanical engineer job openings out there! OTOH, there are tons of HR specialist job openings but you need to apply to a million jobs to even get one reply.
You need to demonstrate that no candidates with skills are available to get a visa waiver. It’s called compliance advertising. There’s a whole industry of body shops that do this stuff and collude on rates. The folks they hire are the foot soldiers of banks and government.
It means 3+ years with a technology. It means don't walk in the door out of a Java college having used nothing else and apply to work on a Triple A game written in C++. It means don't show up after a weekend html course and apply for a job using Node/React. And before you say "well that isn't me for so and so reason", it happens ALL the time to employers.
An entry level position does not mean you get to learn on the job from scratch or near scratch. It means that you are at least capable enough to work on small or easy problems and features and an employer or other devs can coach you along the way and you'll know what they are saying to you.
That's all it means (to any reasonable employer).
I know a Github profile shouldn't necessarily be required to count as experience. But if your only experience is non-work related then you're probably going to want to back it up with something tangible.
See people tend not to put patches on GitHub. (Some fork repos butit is harder for the recruiter to figure out the thing.) And there are only so many projects that are valuable at all.
If you're expected to work on yet another worthless project (TM) then the recruiters should quit. After all, they weren't working on recruiting and PR projects before they took the job. And yes, they can ruin the company just as well.
It gets even harder when you worked on a proprietary thing you cannot publish. Especially if it was freelance.
Technically breaking or not things is a matter for DevOps not developers. And anyway it is mostly a matter of mindset.
To walk in off the street and convince folks you've got the chops, talk intelligently and articulately about the things you've done, the how, the why, the tradeoffs and considerations and consequently talk to them about what their working on and ask those questions or intuit answers or, problems is a very hard skill to acquire.
When I started out, sure, I could write code. Decent code, and was willing to spend a lot of time writing a lot of it. Still, and as I like to describe it, I was a coder and not an "engineer". Knowing how to bang out Python scripts, or setup a Rails app, or some Hibernate entities is fine and probably a pre-requisite but the soft-skills of knowing how to operate within an organization are also incredibly important.
When you're fresh and starting off with no real experience, passion is about the best you can demonstrate at which point you can hope the folks on the other-side of the table are able to recognize that, and willing to take a risk. For all they know, you're a petulant little shit who can't hack it on the job site.
 - I still feel weird calling myself that since I know "real" engineers, but that's my title...
That's the point. If a candidate can't concisely state how they solved a problem or the effect of their having done so, then they likely didn't solve a problem in the first place.
The barrier to entry represented by using Github is incredibly low, so that isn't a differentiator between people in most cases. What was _accomplished_ by all those pull requests and managed repositories?
> Link them to patches accepted by open source projects? IRC conversations and emails? :) (now harder with all that slack thing)
In many cases, those are just about the least worthwhile thing you can do to convince a potential employer. Employers are busy, almost always busier than the candidates who are looking for a job. Make things easier for the employer, not harder.
Related to this, I hate how merely opening an issue is shown as a contribution on the offending user's profile.
Some script-kiddie who can't bother to read opens an issue with a "Gimme teh codez" beg, and now it shows that they "contributed" to my project That's not a contribution, that's the damn opposite! I've had my time wasted!
Which is, you know, the modal case.
In fact, they stated nothing to suggest they were looking at tech firms specifically. You seem to be reading into this what you want to see.
> An entry level position does not mean you get to learn on the job from scratch or near scratch.
it works for lawyers, civil engineers and accountants. not for software engineers it seems.
In the UK engineers can apply for chartered status, which assesses professional experience.
There's no professional accreditation system, no reliable way to assess professional competence, and a lot of the tools (and ideas, and systems) are hacked together with no formal rigour by people who like solving puzzles more than they like making things that work reliably.
These are just number made up on the spot by people who can't be bothered to think about it.
When a job lists a requirement for 2-3 years experience, it means 2-3 years of industry experience.
I don't have 10 years of Python experience because I started coding when I was a teenager.
I learned more about programming in Ruby from 6 months on the job than I learned about Python from 3 years of using it at university.
There's the rub. Early in my career when I had little working experience this CONSTANTLY bit me. It didn't matter that I did consulting on the side or that I worked with the technology or even that I went to school and used the technology there.
In my experience almost all of non-tech companies and maybe half-ish of the tech companies would require the experience be on the job at a company.
Now I don't know how indicative my experience is. I don't know if this type of information is tracked anywhere.
As an aside I'll never forget the one company I applied for who was looking for a developer with 5+ years experience in using .Net Framework... in 2003.
When companies say 'entry-level', they seem to be referring to around 2-3 years of working experience. Not just college + internships, but actual professional experience. It's an extremely silly market to be in right now if you're a fresh grad.
All this talk about passion or numbers aside, I've had the opportunity to experience things from the other side and see how many senior-level developers with 10+ years of experience couldn't write an if-statement in their choice of language to save their lives, or even elaborate on basic design choices/decisions.
Once you have guaranteed interviews, from there it's just a matter of finding a company with the most lax interviews or one where you can fake it the easiest. At least that's my best guess; I don't fully understand how someone can work for a company for over a decade yet can't understand basic OOP or fizzbuzz-level challenges. It became a serious issue at my company because most of the senior-level candidates we got were utterly useless.
They are primarily used as a pay-scale indicator. It's not that recruiters are dumb and looking for fresh graduates with 3 years of industrial work experience, it is that they are looking for people with 3 years of experience that will accept working in the 'junior' pay-scale knowing that it will be 2-3 years before they move up to the 'medior' payscale.
Many/most companies in the IT industry fail to have a decent technical 'ladder', so upping the 'label' once every two years while basically not changing the job is way of pretending that your developers are having a 'career'.
Traditional 'entry level' does not exist at most places as the bulk of companies don't want to pay for the training/mentoring phase. Too much overhead given the projected short career span.
To me, this makes sense, as it allows easier access for people re-training or coming in outside of school without a degree. Graduates come into junior roles due to their degree, whereas school leavers or those that have re-trained spend some time as an entry-level developer.
I've worked with a few entry-level developers, and they've worked their way up through companies to land senior-level roles in a few years. Sure, it took them a bit longer than a university graduate, but there was a route into the industry for them. It was a bog-standard job (agency dev for clients) but when opportunities are few and far between it's a great way to get passionate people in.
a) Expectations of 'Entry-level' actually being greater than 'junior/apprentice'
b) Mentors not part of the role
Both of these issues have arisen from a lack of willingness to have a long-term view and wanting immediate ROI, which I imagine has come about from the perceived view that staff don't stick around anyway.
Set up proper trainee/cadet/apprentice programs, provide mentors and support and these staff will probably a) take the low pay at the start, b) appreciate the learning and support, c) stick around and d) create greater ROI in the end.
Seems not to be how business operate now, and I feel it's painfully evident when I observe how many 'experienced' managers there are in charge of things that have no idea what they're doing. They also appear to often actually have no idea what capabilities they require and so just create industry 'roles' with the hope some experienced person will know what to do.
And that's because of the decades of employers destroying the relationship between them and labor. I'm never going to see a pension, and there are almost no more apprenticeships. Why should I as an employee invest in my company if the company treats me as a replaceable cog.
The lack of employee loyalty can be directly linked to the Reagan-esque destruction of the labor movement, IMO. I have to watch out for myself, and therefore if push comes to shove, my needs are more important than the company's.
This is the core of your comment, and the rest of it describes the whole mess more concisely & articulately than nearly anything I've read.
It's indisputable that being willing to train less experienced people leads to wasted money in the many cases where it doesn't work out. To those with attention spans longer than 6 months, however, it's equally indisputable that when it's done properly and does work out, it tends to more than make up for all the 'wasted' cases where it did not.
There is a ton of untapped, eager talent out there just waiting for a chance. You may have to wade through a lot of duds to get a good hire, but in my view there is no better way to acquire dedicated employees who actually care about the longer term well being of the company.
According to https://taketheexit.de/ 55% of developers feel heavily underpaid and that's something I can believe easily.
I recently doubled my salary, and I still feel underpaid. In reality, I earn above median wage for my age and experience, and live a comfortable life. But we can always do with more cash.
For the majority of skilled workers, IT workers are poorly paid. While we make more than the median salary, the amount of skill, effort, the time it takes to become good at the job is a lot higher than those making the median. You then have the culture of overtime. It's not uncommon to see PRs from people at 10 pm, be told you need to work the weekend, for projects that aren't fully defined and/or have months left to go in development.
Overall, I feel that as an industry, we've massively undersold ourselves and made top-level execs not fully appreciate the value that we as an industry bring. Nevermind the average person, they completely don't value the industry what so ever. The amount of people who default on Web Agency bills who would never default on any other vendor bill is massive. People wanting an ecommerce website for a few hundred pounds.
Hardly anyone I know regularly works 60 hours a week..
Even if I generated a company millions of dollars, that doesn't give any indication of how much they should pay me because it doesn't count for much if a million other people can also generate them the same amount or more.
If you feel like you should get paid more then perhaps you should consider switching to a job where you would get paid more? If there are no takers then presumably you don't offer something which is valuable enough that companies are willing to pay the amount you think they should.
Of course, I suppose one of the big problems with programmers is that it's very difficult to measure job performance but either way, I have a very hard time complaining about my compensation.
This article rings true to me.
My wife ran into this after college only for her industry (biomedical engineering) it is 5 years for "entry level" and they didn't even count her paid college jobs even though they were relevant experience.
Robotics is even worse. Unless you've been building robots as a hobby for the last 5-10 years (which is a VERY expensive hobby btw) it doesn't matter how much other engineering or programming experience you have, they won't take you.
I got lucky with the opposite. I started paid programming in high school and employers counted my high school and college jobs as experience and I had three competing mid-level offers at graduation. So I skipped entry level entirely. And this was in 2007 right before the recession really kicked in so companies were already starting to hold back on hiring.
On the flip side, an actual entry level coder we just hired expects to be working on fun new R&D stuff even though he has 0 experience and I thought we set expectations during the interview. We have him working on bug fixing and client change orders (he will eventually get to R&D but someone needs to fix the bugs, we can't all work on just the "fun" stuff).
> 3, 5 and 8 are your magic numbers. After 5+ years of experience, you (officially) qualify for most mid-level jobs. After 8+ years, you qualify for senior ones. And 3+ for entry-level, obvs.
Waterluvian commented below about the hiring markets self-optimizing themselves to efficiency.
In short, we see so many market inefficiencies in hiring, it'd be hilarious if it weren't folks' lives we were talking about. There's no practical difference between someone who has 4.750 years of experience and 5.250 years of experience, but the market dramatically prefers the latter.
What this actually does: bias you toward hiring people who are comfortable lying
I then went ahead and hired another guy with literally zero job experience, but with interesting academic pursuits and who contributed to Compiz. Guy turned out to be amazing.
Don't lie. If a company won't listen to you because you don't have an arbitrary number of years of experience in your CV (what's this, the aviation industry?), then it is not a company you want to be talking to anyway.
EDIT: I should have said "Don't lie during the technical interview"
For technical interviews though, it depends on how deep the interviewer will want to probe. Banking that they won't care or don't know their stuff is not really a winning strategy.
People may overlook some of the job requirements (many interviewers won't even look at what's written in the job offer itself!). They will not look the other way if they catch you lying, even if it about something that's of no consequence for the job. You get branded as not trustworthy from the get go.
Jailbreakers figured out how to build native apps almost immediately, so it's not impossible. But it sounds like that's not what he was talking about.
Perhaps lying to get past the know-nothings in HR is acceptable. Probably not a good idea to lie to tech people you would work with.
I swear. I've been doing some form of programming since I was a kid, and as a hobby and moonlighting for more like 10 years, and professionally for a notable company for a few years and I still get automatic responses (* rejections) from HR within hours or a couple of days with 99% of the applications I send out with a generic message full of platitudes. And from any size: small startups to multi-national conglomerates. If I hear anything at all.
They also wanted to see your experience. So the first thing they do before an interview is a audition. You're sat down, on prem, (sys ad job) with Windows 2012 server, IIS, MSSQL, and a toy app. You have to make it work. They record the screencap, and review it as a team to see how you perform the job.
Frankly, I love how this place works and gets things done. Roadblocks are a thing, like all jobs.. But some of these are from those much higher up. But communication and support of your coworkers is absolutely amazing.
But the other thing, I work now in a regulated space. I knew that going in (3 good friends work there as well). Lying on my resume would not be, uhh, good :) There's these nice guys and ladys in suits who specialize in a wee more stringent background checks.
My problem has been getting past the gatekeepers to get to that point—any face-to-face.
Though in my current role, I'll say they were happy after speaking to me and discovering I had heard and was familiar enough with their solution to have fiddled around with the platform outside of a professional context. In spite of my amateur knowledge of it, it seemed to be the distinguishing factor in my interview... just not until I actually got past the gatekeepers— in what increasingly seems like a game of chance! :P
Do not treat the years of experience as a barrier to entry.
Beyond disqualifying yourself, there's not much in terms of risk and the reward (getting your career off the ground) is quite good, especially when faced with writing >200 job applications.
Easy solution: distinguish the stuff that you have "exposure" or "light experience" or whatever (translation: I screwed around with Django for a weekend) from the stuff that you are actually claiming serious experience with ("I've built multiple apps in this technology, successfully submitted a patch to their dev branch, and if pressed could quote various parts of its documentation"). Result: filters and HR people check whatever boxes they need to, and any remotely competent technical person sees what you're actually saying. No lying necessary.
most notably "This is how most job ads sound nowadays:":
We’re looking for a person with more than 100 years of experience in software development, coding everything from BIOSes to cloud applications, knowledge of all past, present and future operating systems and setting up secure networks. The applicant must also be able to juggle up to twenty balls and read hieroglyphs, be fluent in Swahili and dance like Michael Jackson (especially moonwalking – nice to have at corporate Christmas parties).