The average time taken by an HR to skim through a candidate's resume is less than 10 seconds(~6). Not that their attention spans are low but the number of applications they receive every day, especially for high demand jobs like data scientists and data analysts are unusually high.
So, having a killer resume becomes almost inevitable. Many potential candidates miss out on their favorite jobs for something as trivial as positioning of their skills on the resume.
There are many formats that are widely popular but the user has to put some effort to not keep the page blank.
To make the resume writing more effective and easier the team at Enhancv introduced a new way of creating resumes on the web with their personalised platform backed by machine learning algorithms.
“It started as a fun projects our devs created in their spare time, but it turned out to be a cool way to show people what a resume could look like. People have told us that they screenshot the resumes and send it to friends who are looking for a new position to use as a reference. It seems that it’s a good way to imagine what the resume could be - seeing a full page rather than staring at a blank template.
So, all resumes you see on the site are generated by a neural network trained on public resources - based on a modified version of TextGenRNN. 90% of the data we used for training (a few thousand resumes) came from Indeed's API. We also scraped 1-2k Twitter bio's to make summaries funnier,”said one of the team members talking about their venture.
On opening the portal, one can immediately notice a sample resume format, where the user can fill in their own details and check for different formats just by clicking the ‘Generate a new resume’ option.
To do this, the team at Enhancv turned towards a popular machine learning algorithm, recurrent neural networks for text generation(TextGenRNN).
Recurrent neural networks(RNN) belong to family of artificial neural networks, which unlike feedforward neural networks, can be used for processing sequence of inputs with the internal state memory. Their temporal dynamic behaviour (time varying activations at each node) made them popular with tasks such as handwriting recognition and speech recognition.
Text generation with RNN can be done on Python using module textgenrnn which has the following features:
- Utilises new techniques as attention-weighting and skip-embedding to accelerate training and improve model quality.
- Train on and generate text at either the character-level or word-level.
- Configure RNN size, the number of RNN layers, and whether to use bidirectional RNNs.
- Train on any generic input text file, including large files.
- Train models on a GPU and then use them to generate text with a CPU.
- Utilise a powerful CuDNN implementation of RNNs when trained on the GPU, which massively speeds up training time as opposed to typical LSTM implementations.
- Train the model using contextual labels, allowing it to learn faster and produce better results in some cases.
Source: Max Woolf
The script for resume generation runs in a "while true" loop and generates a new resume every 3-4 seconds. Resume is then saved to S3 and the same resume is loaded via CloudFront for all users
This resume project is still in its initial stage and the team plans to improve and help millions across the world craft their resumes. With this AI resume generator, they want the users to try and see best resumes they can ever think of building.
Learn how to use TextGenRNN here
Build a cool resume here
Register for our upcoming events:
- Join the Grand Finale of Intel Python HackFury2: 21st Oct, Bangalore
- WEBINAR: HOW TO BEGIN A CAREER IN DATA SCIENCE | 24th Oct
- Machine Learning Developers Summit 2020: 22-23rd Jan, Bangalore | 30-31st Jan, Hyderabad