DEV Community

Cover image for You're not worth hiring unless...

You're not worth hiring unless...

Andrew Brown πŸ‡¨πŸ‡¦ on August 04, 2019

The Junior Developer A junior developer who said I was the smartest person in the company and frequently asked for my help once told me ...
Collapse
 
walkhard13 profile image
Phillip Smith

I was asked to convert from decimal to binary on a whiteboard. It's not a difficult algorithm, but it makes no sense to expect someone to have that algorithm memorized. What possible use would I or anyone else have for being able to regurgitate that during a real project?

Collapse
 
rossdrew profile image
Ross • Edited

You're not supposed to memorise that "algorithm", you're supposed to be able to solve a problem in a very familiar domain.

All that is needed to solve this problem is to know binary is base 2 and decimal is base 10

Collapse
 
louy2 profile image
Yufan Lou • Edited

Taking both your point and OP's, I think yes, the decimal to binary conversion is a representative of the data wrangling problems developers are asked to solve all the time, but the process should include giving the specification of decimal and binary numbers, so that prior knowledge of them is not required.

I still think the decimal to binary conversion is a problematic test.

Decimal to binary is a required problem taught to Computer Science university students, but not so pervasive outside of universities. University students will likely solve it simply by memory, while other people may have to figure it out by themselves. That makes the test:

  1. unfairly skewed towards those who can afford a university degree
  2. less able to differentiate within the university students
  3. not closely related to the domain of the employer

A similar data conversion task taken from the domain of the employer would give the prospect employees an idea of what the work will look like, prefer those who are more familiar with the domain, and test the problem solving skills of university students as much as those of others.

Thread Thread
 
rossdrew profile image
Ross • Edited

I'm worried that you think exposure to the concept of binary and decimal for people working in computer science/development is limited to those with degrees. Anyone with basic math or comp-sci knowledge should know this. If someone applying for a comp-sci/dev position managed to completely skip a pretty basic and core concept in the field I'd wonder about the quality of their knowledge and worse still if they didn't know and couldn't ask for gaps in their knowledge to be filled in on site (which would take all of 10 seconds), I'd worry that they are going to be terrible at a job that is 90% about asking questions to things we don't know.

A similar data conversion task taken from the domain of the employer

You think that binary is beyond people without a degree but specialist domain knowledge isn't?

Thread Thread
 
louy2 profile image
Yufan Lou

is limited to those with degrees

No, I do not think only those with degrees know of binary and decimal. I merely assert that those with degrees have a far higher chance to know of binary and decimal than those without. Please don't strengthen others' proposition unilaterally.

You think that binary is beyond people without a degree but specialist domain knowledge isn't?

No, I do not think binary is not beyond people without a degree. Rather, I think domain specific knowledge is beyond both people with and without a degree. As you say the job is

90% about asking questions to things we don't know

Then for those with a degree you are not testing this at all, since they know binary already.

Thread Thread
 
rossdrew profile image
Ross

The test is supposed to -in 30 seconds- show basic coding skills. NOT test knowledge of binary.

You are focusing on the wrong thing and creating a straw man.

Collapse
 
_hs_ profile image
HS • Edited

Worth noting sometimes hiring people are HR and have little to no knowledge about what they need. There was a post where Swift was only 3 years old and someone made a job post and required 7 years of experience with swift. I usually avoid companies like that and advise others to do the same. One problem is I hate companies that use buzz words to sell to client and most of what they do is lying... We should avoid those companies and try to offer better experience to our customers before it's too late and we ruin the industry

Collapse
 
geolamp profile image
George Lampadaridis

True, most of the times he departments have no idea how to properly hire developers because they have absolutely no idea of what developers do, know or should. Focusing on keywords and trends saves HR from the hassle and there are not enough metrics to judge the success rate of this kind of filtering I guess. I guess having developers hire developers would be the correct course of action in any small to medium sized company.
Just my thoughts though.

Collapse
 
cutiko profile image
Erick Navarro

Here in Chile head hunters are bananas, their entire job could be replaced by a checklist form. The usual interview goes like this:
Do you know A pattern?
Do you know B pattern?
... Z pattern?
And then comes dependencies
Do you know A library?
And so on and on.
And it is absolutely bullocks. You are hiring a jr? Ask about arch pattern, that is ok, but if the company cant provide training! That is a red flag.
You are hiring a senior? Then why even ask about architecture patterns that is literally the job of a senior, there are houndreds of architecture if you are senior you know 1 then you can learn any other.
And the dependencies things, pure BS, it is a library, it has doc! Either train your hires or allow then time to learn.
The perfect fit is the equivalent of a fairy tale, and then they hire and live happily ever after. I rather real work software with problems and team to help.

Thread Thread
 
andrewbrown profile image
Andrew Brown πŸ‡¨πŸ‡¦

head hunters are bananas

I laughed so hard reading that

Thread Thread
 
leob profile image
leob

Haha yes it's brilliant ... and of course this is not just the case in Chile, this is true in about every country all over the world. And the sad thing is that companies looking to hire devs are wasting tons of money on the "services" of these recruiters.

Collapse
 
_hs_ profile image
HS

It is complicated to have devs hiering devs in larger companies. But dependent on a team that needs a helping hand it could be easily done. Write what kind of project is it and what kind of dev is needed than let the lead developer or someone capable enough do the short tech interview to check is someone a good fit and also let then check the CV. If you need a senior java dev just to keep on working with new features you could decide to hire c# senior of 5 years of experience because it's an easy switch. Now if you need performance related stuff you would probably go with someone that did actually java and not other languages. This should usually be discussed with managers and the devs involved not just upper layer

Collapse
 
dana94 profile image
Dana Ottaviani

I don't understand the expectation to write on the whiteboard in interviews. I think managers need to understand that the biggest thing to look for in developers to hire is their interest to learn and how they work with others. These 2 factors alone express what a candidate is capable of.

I also wince whenever a company mentions how strongly they value "a very active and healthy GitHub profile" (took this from a job position) when considering a developer. I for one struggled between coding at my last job and the expectation to have all these side projects to show on the side. If someone with that mindset were to see my profile at one point, they would've just made an assumption that I wasn't what they were looking for and dismiss me immediately.

Collapse
 
dyanneo profile image
Dy

I totally get that. It's as if having a job in tech, and tons of experience isn't enough - you HAVE to have dozens of side projects and contributions to open source. Kind of scary for someone who is good at their job, but doesn't want to do this every waking moment.
I've met some ppl who could code really well, but I would never want to be on a team with them (snarky lone wolves).

Collapse
 
olamidehimself profile image
olamidehimself

This is literally me. I hate taking on side projects because I have a full-time job and I want to focus on it. It increases my productivity.

What if I leave my current job and apply for somewhere else and they don't pick me because I don't have a lot of "projects"

Thread Thread
 
codefi profile image
Frank Owusu-Agyemang

I think my current hiring manager was impressed with my YT channel, I have 13 videos on tuts and how-tos dating back to 2015 with over 100k views... I had only internship at my previous job and I was given a fulltime role at my current job... I think hiring managers need to know more of the position.

Collapse
 
kmwill23 profile image
Kevin

Good thing I am nearing retirement. I'd never actually use GitHub or contribute to open source. Is that controversial? =P

Thread Thread
 
andrewbrown profile image
Andrew Brown πŸ‡¨πŸ‡¦ • Edited

Just made me think of John Carmack using floppies as their "shared repository" for Doom or something

Collapse
 
rainkins profile image
Rain

Anyone heard of Revature? I applied to their Jr. Developer position and a recruiter called me within 2 days. They were impressed with my portfolio for someone who was semi-new to programming. They straight up ended the conversation when I clarified I didn't have a 4-year college degree. They told me that was literally the only requirement for the job. They were willing to train. Their exact words were, "If you had just a degree in, let's say, English, it doesn't really matter, we would hire you right away. Unfortunately, without the degree, we can't go forward with you". My work in Python, CSS, HTML, and JavaScript meant less to them than a Bachelor's of Arts degree with no technical skills. I was heated to say the least.

Collapse
 
username_email1234 profile image
Bob T Greene

Revature is a HUGE red flag. Be glad you had not done it.

Collapse
 
rainkins profile image
Rain

I certainly am now.

Collapse
 
invot profile image
invot

Same thing happened to me with them. I've been in the industry for over 10 years and was relatively over-qualified for the position they were hiring for (I just wanted to work in a small town and they were the only tech company there). Revature is a joke company. You dodged a HUGE bullet.

Collapse
 
andrewbrown profile image
Andrew Brown πŸ‡¨πŸ‡¦ • Edited

I just wanted to work in a small town

This is a problem myself and I know many others.
10+ years experience but the small-town companies are so far removed from the tech industry latest standards they can't even recognize that you're high-quality talent.

The only way I'll be able to work in small-town with high salaries is running my own company and in honest it will be my employees who will get that benefit not me.

Collapse
 
rainkins profile image
Rain

Thank you. I thought I was crazy for a while. They make it seem so nice but, I'm glad to know it was a blessing in disguise.

Collapse
 
devingoble profile image
Devin Goble

Almost as bad, in my opinion, is when organizations recognize the tendency to focus on keywords, and they proceed to use all of them. You see postings like "Must be proficient in at least one major language: Java, C#, Python, Ruby, Go, PHP...At least one front end framework: Angular, React, Vue, Aurelia...At least one cloud platform: Azure, AWS, GCP... There might also be clouds of other keywords that I've rarely bothered to read in detail, because most of the time they're minor details at best.

I can possibly see a couple of reasons for this. First, they want to find somebody who can become proficient at whatever is needed (like your example), and they want to show up in keyword searches. Or, they really do have that kind of stack, which could be frightening, but might be ok if it's a consultancy.

One thing that helps when I'm reading a job posting, is to follow the list with something like "we use AWS, we use Go, we use Vue. As an applicant, this helps me to understand your stack. Then I can move on if I'm looking for something else. Or, I can choose to study up if I like the organization.

It seems to me as if there are so many applicants that some companies are willing to brutally filter out people based on arbitrary keyword matching just so they can get the list to a manageable level. The result is people who are just as good at gaming the system, but might not be as good a fit as people who were filtered out.

Collapse
 
iwelch profile image
Isaac Welch

My company's job postings include the requirement of being proficient in any major framework. (React, Angular, Vue) even though we use Angular primarily. We do this because we look for good talent and our okay investing in educating someone with potential on the ins and outs of a certain framework. In fact most of our developers came from a react background. (including me)

Collapse
 
devingoble profile image
Devin Goble • Edited

As long as that intent is clearly communicated in your postings. Otherwise, I feel like I still want to see specifics of what I'd actually be asked to use. It helps juniors decide where to specialize, and it gives established folks the flexibility to be more picky. If the company was awesome, I'd be willing to go for it if I didn't know a particular framework. I'd like the opportunity to address that in my cover letter and in my early conversations.

EDIT: A short anecdote... Last year, we interviewed two people for one position. One person had a veritable πŸ’©-storm of keywords in their resume. The second person had a more focused resume. The boss ended up hiring the first person because they theoretically ticked more boxes. The resulting πŸ’©-storm caught the boss completely off guard.

Thread Thread
 
willsams profile image
Will Sams

I believe I'm working with that πŸ’©-storm at the moment...

Thread Thread
 
codefi profile image
Frank Owusu-Agyemang

I know one πŸ’©-storm, he feels bossy about one framework and thinks it will work for all without looking at the cons

Collapse
 
saturniusmons profile image
Shane

I see adverts saying things like "We'll take people with no experience in foo, as long as they can show experience in bar" followed by a tech test that must be done in foo.

Why waste people's time???

Collapse
 
johnhalbert profile image
John Halbert

At my company, the exec in charge of our software regularly says: "I don't want to pay someone to learn", then asks for something that doesn't exist, or for us to use some technology no one has ever used previously. I haven't decided if he doesn't think about what he's saying, knows what he's saying but is fine being contradictory if it suits him for the moment or to make a point, or is maybe just a bit dense.

It's like this everywhere. I think software on some levels is fundamentally broken. It's at the center of most tech, which is an area of business that sees continuous innovation, yet we still see job postings listing a laundry list of skills that match the company's entire stack, none of which everyone at the company understands entirely. It's just a farse. No one really knows what they're doing I don't think.

Collapse
 
smmccrohan profile image
Sean McCrohan

Ability and motivation to learn is one of the most important thing I look for in a dev. I don't care if you can write a bubble sort. I care if you can dive into my existing code base, understand it, and make positive contributions.

I pay people to learn every day. What I don't want to do is pay people to NOT learn.

Collapse
 
johnhalbert profile image
John Halbert

Yep, and I bet your software team appreciates it and does a good job because of your approach.

Collapse
 
db325 profile image
db325 • Edited

I love this. I have when I hear,"oh we want someone with x years using this language." That says to me that you're stupid because any dev knows that you can pick up another language. It's the concepts.. The reasons behind doing things a certain way.. Not syntax. And don't ask me to do something you don't do regularly it haven't done in a while just to try and trip me up. Furthermore, no coder codes completely from memory. WE ALL USE GOOGLE! So if I can't solve the problem like I would in the real world, don't ask me. What really gets me is the frameworks. Any developer with a solid understanding of JavaScript should be able to move between angular,Vue,and react. These are all just wrappers that abstract away a lot of common tasks. But again it's the concepts and what's going on in the background... How data is sent, processed, and stored, protocols etc, These things never change

Collapse
 
tsigie profile image
Tsigie

My company encourage us to learn and to educate teammate. I love it because I am learning some thing new every and will to transfer my knowledge to other teammates. They also move us to different teams for us to learn different stacks what ever each team is using. I think it is a great idea an positive outcome.

Collapse
 
omrisama profile image
Omri Gabay

You're right with the "noone knows what they're doing" part

Collapse
 
luisnomad profile image
Luis Serrano πŸ‡ͺπŸ‡Ί

I became a freelancer qualifier after suffering that madness. I realized how many good engineers where dismissed for no good reason on interviews. First thing I told my customers is: let's stick to real coding! (Aka no binary trees crap) and second: framework agnostic technical challenges.

You're totally right with this post and I see it's an international thing, because it's happened to me already (like not knowing enough React, in their freaking opinion). I am in Spain, I wonder if it happens globally but it needs to stop. A good developer isn't the person who knows exactly xyz stack, but the person who can quickly get up to speed with that stack and any other in the future. Plus all the project experience, people skills and so on. Engineers should not do HR stuff, tunnel vision and opinionated egos don't make good qualifiers.

Collapse
 
calicanadian profile image
calicanadian

This is so true. Not just for the big players in the house either; small-ish companies somehow got it in their head that for a dev to be worth a damn, they must know RoR, Python, PHP, React, Vue, AND Angular. It so frustrating when searching for a job and literally a dozen emails come through with β€œYou’re a great match” sentiments. When I get to the HackerRank portion of the interview process, I feel inadequate because I don’t have all of the skills of the Unicorn Dev they are seeking. References and proven track records are meaningless. It’s driving good, experienced people out of the industry.

Collapse
 
eswarpr profile image
Eswar Prakash

I had one a few months ago: You are not worth hiring because you wrote something in one line what would take ten lines - although it works.

Collapse
 
zenithone profile image
Craig Burton

TL;DR: Write code for humans more so than computers.

There is a legitimate concern there though. Code that can be done in one line is neat, but in the long run, the more cognitive load your code requires to grok, the more expensive it is to the project and the team. I don't remember the exact figure, but something like at least 75% of a dev's time is spent reading code. Therefore, every developer should endeavor to make that large portion of time more productive.

Collapse
 
eswarpr profile image
Eswar Prakash

I can understand all the need for writing descriptive code, but these days fluent code writing is so ubiquitous that every library provides it. Even test case writing is being redesigned to be written in Fluent style. So when someone asks me to sum all odd numbers, why would I write a long, lengthy loop instead of a single line that is elegant, readable and fluent?

Thread Thread
 
username_email1234 profile image
Bob T Greene

Stephen Grider mentioned "avoid fancy methods in interviews because the questions are intended to be an interactive thought process exercise." Write the long answer and then ask to refactor.

Collapse
 
prateek_thedev profile image
Prateek Gurnani

I had an interview with a small startup based in Michigan. The role was of C#/.NET Developer. The guy who interviewed me was the C.E.O. The first question he asked me was to implement an AVL tree from scratch. And I had no idea what to do at that time. I felt so bad that I was a computer science graduate from college and I couldn't solve the question. I just tried to explain to him that I studied AVL trees like 2-3 years ago and I didn't expect this question to be asked in the interview. The guy insulted me and told me that you need to practice a lot and be good at data structures and algorithms. And then he said that "Sorry, I cannot go further with the interview". I felt so miserable at that point and I was not able to sleep that night.

Collapse
 
Sloan, the sloth mascot
Comment deleted
Collapse
 
andrewbrown profile image
Andrew Brown πŸ‡¨πŸ‡¦

This could be a good as a stand-alone post on its own. Consider publishing.

Collapse
 
derekanderson profile image
Derek Anderson • Edited
Collapse
 
wangvnn profile image
wangvnn

Engineers have self-focused mind. They are looking for people that are similar to them. If recently they needed to implement something hard, they will use that for their next interview.

Collapse
 
jaakidup profile image
Jaaki

That's actually very true.
The concern is that you really need different people on a team, not just ten of the same :D

Collapse
 
derekanderson profile image
Derek Anderson

Agreed. There is not one solution, so your not hiring "you".

Having diversity in work education and experience creates the opportunities for more and better solutions!

Collapse
 
codemouse92 profile image
Jason C. McDonald

I agree that these qualifiers are absurd and dangerous. I won't allow any such in my own company's hiring practices.

When I encounter these I am interviewed, I have an answer ready, however...

I've had to come to terms with the impracticality of learning everything, even though I want to! Even if I learn something, but I never use it, it just winds up decaying in the back office of my mind. I've had to adopt a policy of only learning something once I need it for my current task. Thankfully, it only takes me a few minutes to do this, so it works out well.

Collapse
 
douglas-sabwa-indumwa profile image
Douglas Sabwa Indumwa

Thanks for this

Collapse
 
philrod1 profile image
Phil

If I ask an applicant to solve a problem I'm more interested in their though process than the answer. As for language knowledge, does it matter if a Java dev applicant doesn't know what type erasure is? Nope. Does it matter if they don't know what static means? Hell yes! Understanding is more important than memory.

Collapse
 
derekanderson profile image
Derek Anderson • Edited

Thinking and code organization are way more important than actual code sills. We can teach a languages, syntax, patterns, and business domain. I'm also okay with ok/problematic code as long as it's organized and reasonably documented so it can be expanded or supported and that you can learn to better.

On a side note, employers who ask people with skills and very specific experiences they are ironically asking for exact people they probably don't want. They are asking for the ..."already been there" and "done that" employee/contractor.

Most skilled developers worth their soul don't want to "do it again", they want to expand their skills and apply what they've learned to something new.

Personally, when I hear this, I see a desperate company that is probably behind schedule and overworking their employees. I'll double my rate/salary every time. I figure its a premium to think your going to get someone 100% productive on week 1, deal with your pressure, and probably perform a job I don't want.

...yeah, I'm on a rant!

Collapse
 
tomekbuszewski profile image
Tomasz Buszewski

I was asked to mutate an Array prototype. When I said that this is extremely bad practice and shouldn't be done, I was told that this is really "lame excuse for lack of knowledge". Oh yeah, it was a JS lead position.

Collapse
 
vanduc1102 profile image
Duc Nguyen • Edited

I interviewed some guys. They could not solve the add 2 arrays integer challenge in their favorite language. I gave thumbs down on them... Sad.
the challenge
addArrayInt([1,2], [9, 0]) => [1,0,2]

Collapse
 
omrisama profile image
Omri Gabay

What the hell even is this question?

Collapse
 
olamidehimself profile image
olamidehimself

πŸ˜‚πŸ˜‚πŸ˜‚πŸ˜‚

It's probably for data analysis

Collapse
 
r7e98kva profile image
Markus

I also don'tget the answer πŸ€”
Regarding the name I'd expect [10,2]

for(int i=0;i<a.length;i++) {
result[i]=a[i]+b[i];
}
return result;

Unfortunately I don't work as a developer, it's just a hobby 😟

Collapse
 
vanduc1102 profile image
Duc Nguyen • Edited

it is for handling big integer add,
if you have 2 numbers:
for example: 123123123123123123123712931290 + 987837298748923749823749823749238472 = ?

you have 2 big arrays of digits represented 2 big integers, we want you to do the ADD operator into a single array.

Thread Thread
 
derekanderson profile image
Derek Anderson

Your original post didn't say "an array of big integers" nor as of the time of writing this was it updated. Waste of my time. Are you sure they didn't know or said I don't want to work here? :)

Collapse
 
georger profile image
GeorgeR

Buzzwords are so much easier for non programmers to understand than what's actually important - the ability to absorb information and more importantly, problem solving.

Good people will find the best tool for the job even if they're not as familiar with it as they could be, then they go ahead and get up to speed.

Collapse
 
arberbr profile image
Arber Braja

I have been in both positons during my work experience as an interviewer and as an applicant.

As an applicant always hated interviewers who did only questions about programming theory when i knewed that none of those things where applicable in the real life world applications being built at that company. The big problem i had with theory only questions was that they forced me as a developer learn stuff copy/paste. I had to answer them exactly like the answer they had on their sheets or it wouldnt work well for me.

This is wrong. This is transforming developers from problem solvers into monkeys.

Thats why when i was in the interviewers position i focused mostly on the real life experience they had on their previous jobs. Also i focused on real life problems we had at work so the applicant always worked on real life situations and we all felt better.

Its true, this way more people passed the interview but all those who passed deserved to pass, how many got hired was then a HR job.

Collapse
 
allanjeremy profile image
Allan N Jeremy • Edited

I took a React,Cypress, GraphQL interview from a stackoverflow listing despite having not used any of the tech in their stack (except NodeJs & SQL)

Got to the final stage. Finished the first task in the final project while learning all these technologies during that period. Later got informed that while I was a good candidate, they felt that I couldn't solve the second problem as easily (which required more advanced concepts in a foreign stack to me) & that for that reason they can't hire me. The worst part is that they mentioned knowing their stack isn't necessary for the interview

Now I'm CTO at my own company

Collapse
 
scroung3d profile image
Scroung3D

I was applying for a JavaScript dev job and all the problems that the interviewer asked me to do were resolved by using array functions like map, filter, reduce, etc. For each problem he told me that he wanted me 'to not use those shortcuts' then what I did was to redo all problem with for loops and then he told me that he wanted me implement data structures on all my solutions. Which I did but I told him that it didn't make sense to me why someone will need to know how to implement a hash table to solve a problem that has a one liner solution in JS. They rejected me I guess he didn't like that comment.

Collapse
 
dmahely profile image
Doaa Mahely

Where I live, it's unheard of to hire somebody to work in a stack they haven't worked with before, even if this person has proven that they developed in a similar stack and can learn very quickly.

It's a shame, companies are passing up good candidates just to eliminate time to get an employee caught up.

Collapse
 
lexlohr profile image
Alex Lohr

Hiring managers are notoriously uninformed about the tech stack and its implications. The worst I have ever encountered was someone who wanted me to do Java for them, because I'm good in JavaScript and that's basically the same, isn't it?

Collapse
 
griffinator76 profile image
Nathan Griffiths

While searching for my very first IT role I attended an interview for a junior technical position advertised as requiring "no experience". In the technical phase of the interview they asked me how I would establish a network between two distant buildings using line of sight lasers and it went downhill from there. Still the most ridiculous interview I've ever had.

Collapse
 
dealloc profile image
Wannes Gennar

While applying for my current job I was asked fairly simple questions about the language and frameworks I would be working with.
Every time I answered, they'd ask more advanced questions and go deeper on the subject to see how far my knowledge went, how I responded to certain things etc.

Besides finding out how proficient I was, what my knowledge gaps were etc, they also got to know how I respond to not knowing the answer to questions, having to admit gaps etc; which is about as valuable.

Collapse
 
michaelrschmidt profile image
Mikey Was Here... AKA Schmidty

If you want to watch a person solve problems watch them play freecell. White boards suck and I love interviewing and whiteboards.

Freecell is awesome because every level is supposed to be solvable, find one you haven't solved and have them play that... Maybe they will teach you something.

Collapse
 
derekanderson profile image
Derek Anderson

... and to HR and hiring managers out there...

Just because someone has only driven Nissan and Chevrolet trucks doesn't mean they are not qualified to drive a FORD truck. This is analogous to many higher-level programming languages. Java and Python its probably not really much of a leap (yeah they do concurrency and threading different but suspect a qualified person could figure that out. However, C/C++ and Python/Java (either way direction) it probably a bigger deal. It might not be a big leap between C++, Rust, and GO.

Collapse
 
ronakjethwa profile image
Ronak Jethwa

I once had a recruiter asking me to explain event loop in JavaScript. She had to type as I was explaining her, and that answer was supposed to be submitted to the hiring manager and decide if I am eligible for the next round.

I spoke in detail for about 2-3 mins, and she moved on to next question. I asked her if she could type all the technical jargons I threw at her, and she said she didn't understand a lot of technicality in it, and she wrote what she could understand. Obviously, I didn't make it to the next round. :(

I still don't know what I could have done better there to make the cut!

Collapse
 
jdsteinhauser profile image
Jason Steinhauser

I wasn't hired by a company because, even though I passed both rounds of their coding challenges, during their interview process they based a lot of their questions around distributed databases... which was not part of their job description, and it was something I am perfectly capable of picking up.

Collapse
 
zacharythomasstone profile image
Zachary Stone

I think a lot of companies have hidden requirements. You are not worth hiring unless they can give you any problem, and any due date, and you just make it happen. In my previous job, I had a boss who often overpromised to the client, wouldn't ask for our feedback, then state "You guys are smart, you'll figure it out" and leave us to stress over deadlines and try to make it work. I got fired for coming up with a better plan for a project that wasn't being managed. Needless to say, these kinds of companies that do not have a pulse or the slightest understanding of development, will find themselves with a high turnover rate or developers who are writing fast, dirty code that is not scalable and full of bugs.

"Fake it till you make it" is a mantra I have heard often, and I think it's because of these types of companies.... but I HATE this motto. Sure, you should have confidence that you can figure out problems, learn languages, etc with the right amount of time and resources... but faking your abilities only allows companies to fake their support of you. They will clap your hands when things are not on fire, then abandon you to the flames when they errupt.

Collapse
 
jwp profile image
JWP

Yes, I've too been under the new hire vetting process. What I should have told them is "I look up everything on Stackoverflow". If they don't get that, then it's probably a good thing I didn't get hired there.

Collapse
 
zenulabidin profile image
Ali Sherief • Edited

I think I have this in my head without ever looking it up (but I wouldn't* expect anyone else to know it):

Suppose x is the input and y is the output.

  1. set y to 0
  2. take x and modulo by 2 (don't set x yet), AND y with 0x1
  3. divide x by two and throw away the decimal remainder and set x to this result.
  4. Left shift y by 2.
  5. repeat steps 2, 3 and 4 until x becomes 0. Result is in y. See edit**.

Although I don't see the use for this especially if the language or libraries can do it for you.

EDIT: I thought about this for a few hours and realized this is incorrect because the highest bit of y is the lowest bit of x. The correct algorithm is:

  1. Get an integer i and set it to 1. Also set ints j and y to 0.
  2. Take (x modulo (2 RIGHT SHIFT i)) divided by i, truncating the remainder, and set it to z.
  3. Set y to y OR (z RIGHT SHIFT j).
  4. Multiply i by 2. Increase j by 1.
  5. Repeat steps 2 and 3 and 4 until i is greater than x.

*the original comment had "would" by mistake! oops.
**I guess if you admit you made a mistake in your algorithm during a job interview you are more likely to get hired for being honest.

Collapse
 
v6 profile image
πŸ¦„N BπŸ›‘ • Edited

...you are more likely to get hired for being honest.

What planet are you from, and can I visit?

It's taken me a long, long time to find companies that want honesty and behave like they want it.

Collapse
 
shindesharad71 profile image
SHARAD SHINDE • Edited

Some things I never understand as Js Full Stack Developer -

  1. In project we google where we stuck and able to solve the problem.
  2. I have never used any kind of algorithm in my day to day job everything is CRUD in web.
  3. What is the point of asking this complex questions in interview instead of ask practical ones.

Devs what is your opinion on this?

Collapse
 
dbc2201 profile image
dbc2201

Agreed, I was asked to name the algorithm to find out the second largest element in a Binary Search Tree, and even though I told them the whole algorithm step by step, with and without the actual code, they didn't accept the answer because I couldn't name it.

Collapse
 
matthewbdaly profile image
Matthew Daly

In late 2017 I heard in feedback from an interview with a digital agency that they didn't think enough of my experience had been in an agency environment. Which was very strange as all but six months of my experience since 2011, when I started in the industry, was in an agency environment...

Collapse
 
darkeye123 profile image
Matej LeΕ‘ko

I can relate to that VueJS experience. It is rather strange to be looked down and years of your experience from synergy domains bashed by few works like - you are too young / I see you've used it only for half a year. The worst thing is this most of the time comes not from HR but the devs alone.

Such behaviour is a big red stop for me

Collapse
 
th3n00bc0d3r profile image
Muhammad

Appreciate the share, worth noting. Cheers Man!

Collapse
 
leob profile image
leob

Couldn't agree more, oftentimes the qualifiers (criteria) are all wrong. It's not that experience with a specific stack isn't important, but companies who are looking to hire should look beyond that - they should look at more generic and abstract skill sets, both "hard" and "soft". And please let companies stop being hung up on algorithm tests like being able to memorize how to code a bubble sort from scratch.

Collapse
 
jordandickow profile image
JordanDickow

I come from a non-developer background so I was very intimidated by the code interviews. Once I was told through my boot camp that most companies want to see your process, I got much more comfortable preparing for them.

Collapse
 
jacobmgevans profile image
Jacob Evans

Hell yes! Blows my mind that some of the smartest people working in some of the most innovative and super progressive companies....can be so myopic :(

Collapse
 
djacceso profile image
DJ Acceso

Agreed.
Most questions I receive in interviews are academic and chances are, dont apply to the company I am interviewing for.
Also, almost all algorithms are coded for in a library, or are commonly stack-overflowed. Just pass on the company until you get a gig that is more "sane".
Ive worked for at@t, alcatel lucent, general motors, bloomberg, fbi and a number of other high profile companies.
The only clowns asking these stupid questions are nobodies or maybe google.

Collapse
 
toonarmycaptain profile image
toonarmycaptain

Oh, "junior" jobs that want 3 years of experience, plus expertise or extensive knowledge of C++, Java, Python and Typescript.

Collapse
 
derickhess profile image
Derick Hess

I have since moved away from management, but for a while I was the manager in charge of both the software development teams and the IT teams at the seismic facility I worked at. When I was hiring I would ask some very basic technical questions about the language/stacks we used just to see if they knew about them and why they would be used.

I more focused on questions asking 'how' they would go about solving a certain problem and what their thought process was. That for me ended up getting people better suited for the job. I needed software developers that were also problem solvers. MAny of our developers including myself also went out in the field to support seismic experiments so I needed people who coudl troubleshoot, and possibly write a new utility, solve a hardware problem, or diagnose an issue while in the jungles of Venezuela, or while working out of a yurt hundreds of miles form anything resembling civilization in Mongolia, or in a remote camp in Antarctica.

Collapse
 
ramong1145 profile image
RamΓ³n Gallo

It's not the same knowing something by memory than really know how things work from the inside. Sure, a bubble sort must be something really basic, but it's something that is though to students to train them to elaborate algorithms just right. On the professional field, is it really necessary to know this or any sorting method?
It's like knowing by memory how to factorize an equation instead of understanding the logic behind the operation. At the end, is just an exercise but not a parameter to qualigy if someone is a professional or not.

Collapse
 
kumbi profile image
Kumbi Madzinga

I've had occasion to sit on the hiring side of the table. My primary qualifier when my wishlist isn't immediately met is to evaluate the candidate's willingness to learn and how their different path to "developer" can be an asset to the team.

"You're not worth hiring if you can't/don't have..." smells like dogma rearing it's ugly, prejudiced head again in an industry that changes stack and talent approaches faster than Streisand did her concert wardrobe. Get over yourselves.

Collapse
 
gamergirlsradio profile image
Mesh Making Machines - GamerGirlsRadio • Edited

I am far from being a code goddess, but applied for a coder/customer service position at a game company recently. The game teaches people to code, and while again am not proficient (been out of practice as where I work does not really allow coding outside of work) I did okay on the test. But they didn’t hire me...because I didn’t ace the test...just on the coding part. But this is a job...where the job teaches people to code. Stands to reason, I am going to get proficient in short order, just working there. Logically made no sense to me, lol.

edited to add-I did get to see where I was lacking and working to improve and was so happy to see I had not forgotten everything in the 5 plus years I haven’t been able to code.

Collapse
 
andrewbrown profile image
Andrew Brown πŸ‡¨πŸ‡¦

For ExamPro I want our hiring process to be that you use our platform to learn to program on our stack and you're hired. Sounds a bit similar.

Collapse
 
atlchris profile image
Chris LentzπŸ‘¨πŸ»β€πŸ’»

I dig this one. These types of problems help to show true problem solving skills.

Collapse
 
mwlang profile image
Michael Lang

A good junior developer comes in with opinions he/she inherited from professors or from what they read and necessarily are not speaking from experience. I suspect that by the time most Jr. devs graduate to Sr. and get another step closer to being the hiring manager, their opinions start to be shaped by their team dynamics and company culture.

A good Sr. developer or Team Lead or Product manager should be recognizing from the outset that the Jr's need training in hiring and making decisions on who joins the team as they progress and have an approach that includes the lessor experienced developers in the hiring and decision processes that bring new members on board. In other words, be shocked by the non-sense that comes from the Jr's, but don't take it personally nor act shocked. This is your opportunity to coach!

Collapse
 
nuculabs_dev profile image
Nucu Labs

According to Joe, if you can solve an easy programming question fast then you're a good hire, if you can't solve the easy programming question then you may not be able to tackle on the advanced stuff.

Source: joelonsoftware.com/2006/10/25/the-...

Collapse
 
brianfoley81 profile image
Brian Foley

I had a similar experience once, a junior developer said we shouldn't hire anyone who couldn't explain SOLID off the top of their head in the interview. I told him I didn't even know what SOLID was (turns out it was formalized long after I graduated from college). You should have seen the look on his face. And yea, this is someone who continuously needed help to finish their tickets on time. And yes, someone who was part of the interviewing process for all tech hires.

Collapse
 
michaelrschmidt profile image
Mikey Was Here... AKA Schmidty

That's ridiculous. That's all I got on that. Ridiculous. I can't find another word...

Collapse
 
rwoodnz profile image
Richard Wood

Makes you wonder who has the power - dev.to/rwoodnz/attitude-adjustment...

Collapse
 
kimsean profile image
thedevkim

I think as long as the person has experience with development/projects portfolio and is good at googling/searching on solutions, and validating the code is good enough to be hired.

Collapse
 
v6 profile image
πŸ¦„N BπŸ›‘

The inmates are running the damn asylum.

Collapse
 
v6 profile image
πŸ¦„N BπŸ›‘

// , Oooo, I got one, write something about the Hiring Committee Effect!

Bonus points for corollaries to Conway's Law.

Collapse
 
krishnatandon1208 profile image
Krishna Tandon

I was asked to master AngularJS in just 2 days and give client interview on Monday.

It's not easy to MASTER any tech in 2 days.

Collapse
 
andrewbrown profile image
Andrew Brown πŸ‡¨πŸ‡¦

The way we are engineering our hiring process at ExamPro is we create mini-courses and you just have to pass them so we know you'll be productive. Since our mini-courses are 1-to-1 with our technical stack, developers will meet the bare minimum.