Just Lost Job - Coping/Job Hunting Advice Needed

I may as well jump in because I’ve been going through a bit of the ol’ job search lately. I caught wind of my company doing some massive restructuring/downsizing which led me to apply for a senior position at a very high tech company. I actually have a friend there who helped me get in the door and move things along.

The whole ordeal was a bit brutal. I had a coding assignment (I had a lot of fun doing this) then 2 weeks later a technical deep dive / whiteboard via video conference, then 2 weeks later another tech heavy video conference interview with high level concepts. Finally 2 weeks later I get invited to a full day on-site interview. I thought it was the home stretch where I could show my personal / cultural chops and mingle with the hiring manager. Unfortunately it was like 3 more whiteboard / code interviews. Ugh. Who codes well with an audience staring at the monitor of a blank screen? I bungled the final part hard and I could only guess that was the reason I didn’t hear back.

My friend was going to fight for me but I told him not to bother as I recently found out my current position is giving me a very healthy offer to stay until early 2018. Good experience all in all but I did tell him that they should revisit their hiring procedures.

Is that type of ordeal normal for programming jobs? It certainly is not the norm in chemistry and engineering interviews. Nor of course in something like a sales job interview.

Like you said, it doesn’t seem representative of the actual job. I wonder how many of their current employees in this area, the ones they really like, would do well in that exact same process?

Good job! The goal of the resume is to get an interview, the goal of the phone interview is to get in the door for a face to face interview. Like Tman said, normally once you get the face to face interview everyone really wants you to do well and are hoping to hire you.

My only advice at this point: relax (easy to say - deep breathing) and really, really listen to what people are saying to you an asking you. And have some good questions for them that are sincere and show you’ve done your homework (but aren’t obviously being asked just to show you’ve done your homework, if you know what I mean.)

Good luck!

It varies a lot by company. At my employer, we do ask folks to write code in a technical phone screen and then do more technical work in an in person (full day) interview, but that many levels of hardcore coding is significantly beyond.

Personally, beyond the basics of “do you actually know the languages you claim you know and are otherwise not misrepresenting your experience significantly?” I don’t find coding exercises very useful.

I’m kinda curious now. Jazar, if you don’t mind my asking, what kind of position were you interviewing for?

When I was last looking for a (software development) job, I had one potential employer give me a ‘homework assignment’ where they wanted me to stand up a full stack web application. The whole thing made me a bit leery and I did some research into it. That led to a bunch of interesting discussions about the value of things like whiteboard exercise and take home work for applicants, starting with this fun thread:

Google: 90% of our engineers use the software you wrote but you can’t invert a binary tree on a whiteboard so f*** off

(summary: the guy who wrote Homebrew for the Mac - a package manager which is used by probably 90% of Mac developers - interviewed at Google but could not ‘invert a binary tree’ on a whiteboard so they declined to keep interviewing him. There was much discussion about the value of being able to invert a binary tree - whatever the heck that means - on a whiteboard, and many think that’s not even a real thing).

That’s a fun rabbit hole to jump down. That led to some investigations where I ended up deciding a couple of things, including:

  • take-home exercises self-select against the people you want to hire - the really busy ones
  • the only really appropriate type of programming exercise are the ones you do during the interview - to, as @ReptileHouse says, make sure you’re not lying about knowing the language
  • these type of programming exercises help identify bad candidates, but don’t do much to identify good ones

That said, some places can get away with asking candidates to do work at home for an interview - but IMHO only the top tier places like a Google, Apple, Microsoft, etc. Joe Computing can not get away with that, and all they do is drive people to work at other places.

BTW, I told the company I was interviewing with that I would respectfully decline to do the assignment, that I felt it was not a good exercise since it tested skills and abilities that were the opposite of what they were looking for, and I sent a bunch of links describing why I felt that way. No surprise but after a bit of back-and-forth I ended my interviews with them. But no worries, I got a much better job at another place!

The title of the position was Sr. Software Engineer Cloud. My tech stack (.Net/NodeJs) wasn’t a perfect match for what they were developing on (Go) but they didn’t grill me on language specific stuff. It was mostly algorithms, optimizations, data types, and some higher level cloud architecture scenarios. I felt I was doing great until the end of the day where I got handed a blank paper & pen and was told to write web methods including parameters & implementation of a Dropbox type file share application with permissions. File streams are not my forte and I was burnt by days end so I just fumbled, stumbled and struggled for a bit until the time was up… Hard to say exactly why they didn’t make an offer after so many steps. Regardless, just before I went onsite I had gotten details of my current position and I knew it would take a lot for me to leave this year. I went there as much to interview them as they did me - neither of us were willing to commit.

I’m a working manager in my current position and I do a lot of hiring interviews for all levels of development. We’ve done different approaches throughout and I’ve learned a lot about what a good candidate should be. In my opinion it takes a high but healthy level of passion for their job, a good foundational knowledge base with the capacity & drive to learn more, excellent communication skills, and a knack for solving difficult problems without hand-holding.

At a recent HR hiring meeting where I work, I discovered the top reasons for failure are: coachability, emotional intelligence, motivation, & temperament. Research shows that only 11% of new hires fail because of technical incompetence.

Our current HR team gives out two different profile exams to candidates:

First is the Employee Personality Profile (EPP) that measures twelve personality traits that provide valuable insights into a person’s work styles and how they are likely to interact with co-workers, management and customers.

The second is the Criteria Cognitive Aptitude Test (CCAT) that measures an individual’s ability to solve problems, digest and apply information, learn new skills, and think critically. Individuals with high aptitude are more likely to be quick learners and high performers than are individuals with low aptitude.

This process was just recently added so I can’t say if they’ve been useful.

Anyways, hope that helps inform people that are looking for work (or hiring) and hopefully with my lessons learned I’ll be able to be a better candidate next year when I’m back on the market!

Web methods? What was that specifically? SOAP? REST? What? :)

It was using REST API.

Oh, ok, got it. Did they require proper HATEOAS too? Because that does sound a bit too excessive.

I don’t think so? Maybe that’s why they were giving me a look like I wasn’t telling them what they wanted to hear heh. It was a couple months back so my memory is hazy on the details. I just remember getting annoyed that he was pushing to see the code on paper. Typically there’s scaffolding and/or frameworks that can help out. Live and learn. There’s a pluralsight course on creating web applications with Go that I think would help me fill in some of my gaps. That language is very fun.

Yeah, it was excessive. It’s like asking a Mechanical Engineer to build a rudimentary car using paleolithic tools. Or something. ;)

Fascinating. And yeah, over my 30+ years in industry, working a large global behemoths and small to midsize companies, in a very wide range of technology markets, it has been VERY rare that we had to let someone go because they were technically unable to do the job. It has indeed been emotional intelligence (and all that goes with that,) attitude, work ethic, etc. We say during the interview we’re trying to figure if they can do the job and then will they do the job.

Timing is interesting; we just lost two employees from the labs in the last week. Rare for us, One we couldn’t do much about; he was on parole for something he did a year ago, doing a background check we thought the parole imposed was pretty harsh for the violation (without going into details, pot drug related,) and decided to give him a chance, but he violated his parole by doing something stupid and he’s in jail now. But more related to this thread, the other was a person working in a QC lab, relatively young, has shown promise and we’ve increased his responsibility and giving him extra training, but he is one of those that just gripes and moans and complains about everything, all the time. Company sucks, pay’s too low, doesn’t like the hours, shows no respect for his manager (who was working in his job a couple of years ago and was promoted due to her growth and understanding of the needs of the group and is liked by most in the group,) takes breaks at the worst possible time (he needs to test and approve/not approve what is being made on the production line he’s accountable for, and he’ll take a break whenever he feels like it no matter what’s going on on the line,) and on and on and on. When his manager talks to him about his performance and behavior he just gives her attitude. As is often the case, he’s having an effect on those working around him.

So we pulled him in and said, it appears you just don’t like your job, and you’re not going to like your job. And every time we talk to you about it you just tell us how much your job sucks. OK - life’s too short, not every company is a fit for every employee, time for you to go find a job you like.

The sad thing: He’s really good technically. He could have had a really great career here.

As I type, I can’t remember the last time I had to let someone go because they were unable to do the job due to technical capabilities. In fact, if someone has the energy, motivation, attitude, etc. and they don’t quite have the technical ability, we’ll go out of our way to give them training in the area where they may be weak. It’s far easier to find people with the required technical capability than to find people who are great employees.

Assuming that’s equivalent to what we consider a Sr. Engineer here (we don’t use those sorts titles explicitly, but they map pretty well), that’s an insane interview schedule. The general topics make sense, but the level of intensity is off the charts. Wow.

So about that second interview…

…I got an offer. A good one that represents a significant improvement in my pay, as well as entrance into the field I desire.

Guys, I’m literally shaking with excitement.

That’s awesome! Big congrats!

Sweeeet! I’m so happy to hear that, Craig. I hope it’s all you hope for and more, and the first step into a prosperous new career.

That is so awesome.

Today is a good fucking day. Congrats, Craig! I’m super thrilled for you.

Wooooooooooo!!!

Congratulations, sir! Well done.

Hooray!