Reducing Time-to-Hire and Finding Niche Candidates via Text Mining and NLP
joinphase.com
joinphase.com
Resumes are a very impoverished indicator of a candidate's abilities. So you "have experience" with a technology. Did you make the original decision to use it? Or were you asked to use it? Or was it in place when you got there? Were you only a consumer of its benefits? Do you understand its internals? Have you had to extend it? A technical project may take months or years, but your resume will represent it as a single line of text at best. "Year NNNN -- Company Foo -- Role Bar -- Implemented X using technology Y." Until resumes are structured like interviews, interviews are essential for getting this level of detail.
Job descriptions are a very impoverished indicator of what a job is actually like. "We require N years of experience with X." Is that because this is your generic job description boilerplate? Or because your entire tech stack is inextricably tied to X? Will the candidate join a team that has inherited a legacy project that uses X? How is that team's morale? How is their turnover? If the candidate hates being on that team, how easy will you make it to switch? Are you hiring the candidate specifically with the goal of throwing people at a messy problem? Is it your responsibility to make sure the candidate succeeds? Until job interviews spend as much time revealing the company to the candidate as they spend grilling the candidate, back channel communication is essential for getting a job you like.
I can't believe that ML and NLP offer new insights in this exchange. If I'm not willing to tell you something, you won't get it from me using NLP either. I've reached a point where recruiters telling me about using "cutting edge AI" results in their email getting deleted immediately. The last such service I responded to (Celential.ai) spammed me for a long time, and every job they sent me was garbage. Garbage to such a degree that it was my first experience with getting on the phone with a hiring manager and one or both of us saying, "No, there's really no point in us having this conversation, thanks," and hanging up.
Our approach is to take a more (unfortunately?) practical approach to this -- most recruiters and hiring managers simply scan most resumes for keywords, and most applicant tracking systems do the same... So it's not about predicting something from the resume, so much as making the matching process more flexible, given that most people doing the initial screening aren't doing a good job.
In other words: make a very imperfect process slightly less bad today, so good candidates don't get missed.
And of course, you still need to do the full set of interviews afterwards! We're not saying this is any sort of silver bullet.
My analogy is a weather forecast. Regular forecasts give you the temperature and precipitation, and let you decide what to do based on this. If meteorologists instead black boxed the weather and just tried to tell people what kind of clothes to wear every day, I suspect people would start ignoring the forecast. But this is how so many ML use cases are set up.
I'm happy to see an application that respects ML for what it can do and not try and shoehorn it into the "prediction machines" paradigm.
We'll definitely clarify that in future posts as well. We did our best to provide an example in the post, but it's tough. We got into talent/recruiting because I'm a former data science manager (my last startup was an AI one as well) and it always bothers me how little intentionality and awareness there is around limitations of AI in AI-driven products. Doesn't help that marketing teams tend to just promote the idea that "AI will solve everything", either!
99% of the time it's boilerplate/some HR rep who asked the devs "what do you code in?".
My advice is to pad your resume with every possible tech you ever touched to get past the keyword filtering.
Apart from some signals that tell me a candidate is interesting (e.g. interesting side projects) I for the life of me can't tell from a resume, if a developer writes good maintainable code and I doubt that AI can.
The thing that actually takes time is really the part that comes after reading the resume. Bringing people in, making appointments, interviewing, testing their quality, see if they are a fit for the company, find if they are a fit for the team.
I've always wondered if a longer format helps me more with automated resume scoring. Also, does LinkedIn come into play here? I feel like when I show up to an interview, there's a 50/50 chance they're holding my resume vs. a printout of my LinkedIn profile.
The challenge is those filters suck. Hence our approach to making it "conversational" or flee-flowing. Using word embedding and other clustering helps a lot.
Knowing nothing else, I'd say keeping your resume to 2 pages is critical... And make your "about" section on LinkedIn really stand out with a few key accomplishments.
If you'd like, shoot me your resume at hello@phaseai.com and we can give you specific feedback.
We've also explored building our own universe of words/terms to help with this, but that's a 2.0 sort of dream, at this point!