- Data cleaning and processing techniques were applied to reduce and transform the categorical features. Also, outliers handling was performed.
- The top three countries with higher annual salaries were: the USA ($125000), Israel ($112000), and Switzerland ($104000). The high salaries in these countries correspond with an expensive cost of living.
- RandomForestRegressor (ensemble model) algorithm exhibited the best metric performance (MSE) between all models. The tunning hyperparameters of the selected algorithm were performed using the Grid Search methodology.
- A pipeline with data processing (including label encoding) and machine learning input and output was performed. The deployment was carried out using the Streamlit Framework server.
In the global software industry, determining appropriate salary expectations for software-related positions is a complex process, influenced by factors such as country, experience, and level of education. Job seekers often struggle to assess their market value, while employers face challenges in offering competitive salaries that attract and retain top talent. As a result, there is a need for a reliable and user-friendly tool that can provide salary predictions tailored to these key variables.
The application empowers job seekers to better understand their worth in the job market and negotiate appropriate compensation, while also assisting employers in benchmarking salary offerings against industry standards.
The development of an intuitive web app to predict the developer’s salary based on country, education level, and experience. The prediction will be a reference parameter for a better understanding of software market conditions. The following steps are applied:
- Real-data collection.
- Data cleaning and formatting: stratified encoder, label encoder
- Outlier handling
- Machine learning development through pipeline: Linear Regression, Decision Tree Regressor, and Random Forest Regressor.
- Hyperparameter tunning using Grid Search methodology.
- Test web app deployment using Streamlit framework.
- Programmers/Software Developers: They can use the app to estimate their
potential earning capacity based on their current or planned education and experience
level. It can guide their career development, salary negotiations, or job search
strategies. - Employers: Tech companies, startups, or any employer needing programmers can use
the tool to understand the average salaries for specific roles based on the required
experience and education. It could inform their budgeting, compensation strategies,
and recruitment processes. - Recruitment Agencies: These agencies can use the app to guide their clients (both
companies and job-seekers) about potential compensation for different roles, thereby
improving their service effectiveness.
The real data of software developers’ salaries was obtained from StackOverflow Survey of 2021, where the data analysis of the raw data can be accessed.