A deep dive into the data job market! Focusing on Data Engineering roles, this project explores top paying jobs, most in-demand skills, optimal skills, and where demand meets reward.
Check out the SQL queries here project_sql-queries
Driven by a quest to navigate the data engineering job market more effectively, this project was born from a desire to pinpoint top-paid and in-demand skills, streamlining others work to find optimal jobs.
Data hails from the SQL Course from Luke Barousse. It's packed with insights on job titles, salaries, locations, and essential skills.
- What are the top-paying data engineering jobs?
- What skills are required for these top-paying jobs?
- What skills are most in demand for data engineers?
- Which skills are associated with higher salaries?
- What are the most optimal skills to learn?
For my deep dive into the data engineer job market, I harnessed the power of several key tools:
- SQL: The backbone of my analysis, allowing me to query the database and unearth critical insights.
- PostgreSQL: The chosen database management system, ideal for handling the job posting data.
- Visual Studio Code: My go-to for writing code, database management and executing SQL queries.
- Git & GitHub: Essential for version control and sharing my SQL scripts and analysis, ensuring collaboration and project tracking.
Each query for this project aimed at investigating specific aspects of the data engineer job market. Here’s how I approached each question:
To identify the highest-paying roles, I filtered data analyst positions by average yearly salary and location. This query highlights the high paying opportunities in the field.
SELECT
job_id,
job_title,
job_location,
job_schedule_type,
salary_year_avg,
job_posted_date,
name AS company_name
FROM
job_postings_fact
LEFT JOIN company_dim ON job_postings_fact.company_id = company_dim.company_id
WHERE
job_title_short = 'Data Engineer' AND
job_location = 'Canada' AND
salary_year_avg IS NOT NULL
ORDER BY
salary_year_avg DESC
LIMIT 10;To understand what skills are required for the top-paying jobs, I joined the job postings with the skills data, providing insights into what employers value for high-compensation roles.
WITH top_paying_jobs AS (
SELECT
job_id,
job_title,
salary_year_avg,
name AS company_name
FROM
job_postings_fact
LEFT JOIN company_dim ON job_postings_fact.company_id = company_dim.company_id
WHERE
job_title_short = 'Data Engineer' AND
job_location = 'Canada' AND
salary_year_avg IS NOT NULL
ORDER BY
salary_year_avg DESC
LIMIT 10
)
SELECT
top_paying_jobs.*,
skills
FROM top_paying_jobs
INNER JOIN skills_job_dim ON top_paying_jobs.job_id = skills_job_dim.job_id
INNER JOIN skills_dim ON skills_job_dim.skill_id = skills_dim.skill_id
ORDER BY
salary_year_avg DESC;This query helped identify the skills most frequently requested in job postings, directing focus to areas with high demand.
SELECT
skills,
COUNT(skills_job_dim.job_id) AS demand_count
FROM job_postings_fact
INNER JOIN skills_job_dim ON job_postings_fact.job_id = skills_job_dim.job_id
INNER JOIN skills_dim ON skills_job_dim.skill_id = skills_dim.skill_id
WHERE
job_title_short = 'Data Engineer'
AND job_work_from_home = True
GROUP BY
skills
ORDER BY
demand_count DESC
LIMIT 5;Here's the breakdown of the most demanded skills for data engineers in 2023
| Skills | Demand Count |
|---|---|
| SQL | 7291 |
| Python | 4611 |
| AWS | 4330 |
| Azure | 3745 |
| Spark | 2609 |
Table of the demand for the top 5 skills in data engineer job postings
Exploring the average salaries associated with different skills revealed which skills are the highest paying.
SELECT
skills,
ROUND(AVG(salary_year_avg), 0) AS avg_salary
FROM job_postings_fact
INNER JOIN skills_job_dim ON job_postings_fact.job_id = skills_job_dim.job_id
INNER JOIN skills_dim ON skills_job_dim.skill_id = skills_dim.skill_id
WHERE
job_title_short = 'Data Engineer'
AND salary_year_avg IS NOT NULL
AND job_work_from_home = True
GROUP BY
skills
ORDER BY
avg_salary DESC
LIMIT 25;Here's a breakdown of the results for top paying skills for Data Engineers:
- High Demand for Big Data & ML Skills: Top salaries are commanded by engineers skilled in big data technologies, reflecting the industry's high valuation of data processing and predictive modeling capabilities.
- Software Development & Deployment Proficiency: Knowledge in development and deployment tools (Docker, Kubernetes, Airflow) indicates a lucrative crossover between data analysis and engineering, with a premium on skills that facilitate automation and efficient data pipeline management.
- Cloud Computing Expertise: Familiarity with cloud and data engineering tools (Elasticsearch, Databricks, etc.) underscores the growing importance of cloud-based analytics environments, suggesting that cloud proficiency significantly boosts earning potential in data engineering.
Combining insights from demand and salary data, this query aimed to pinpoint skills that are both in high demand and have high salaries, offering a strategic focus for skill development.
SELECT
skills_dim.skill_id,
skills_dim.skills,
COUNT(skills_job_dim.job_id) AS demand_count,
ROUND(AVG(job_postings_fact.salary_year_avg), 0) AS avg_salary
FROM job_postings_fact
INNER JOIN skills_job_dim ON job_postings_fact.job_id = skills_job_dim.job_id
INNER JOIN skills_dim ON skills_job_dim.skill_id = skills_dim.skill_id
WHERE
job_title_short = 'Data Analyst'
AND salary_year_avg IS NOT NULL
AND job_work_from_home = True
GROUP BY
skills_dim.skill_id
HAVING
COUNT(skills_job_dim.job_id) > 10
ORDER BY
avg_salary DESC,
demand_count DESC
LIMIT 25;| Skill ID | Skills | Demand Count | Average Salary ($) |
|---|---|---|---|
| 8 | sql | 27 | 115,320 |
| 234 | python | 11 | 114,210 |
| 97 | aws | 22 | 113,193 |
| 80 | spark | 37 | 112,948 |
| 74 | azure | 34 | 111,225 |
| 77 | java | 13 | 109,654 |
| 76 | snowflake | 32 | 108,317 |
| 4 | kafka | 17 | 106,906 |
| 194 | hadoop | 12 | 106,683 |
| 233 | nosql | 20 | 104,918 |
Table of the most optimal skills for data analyst sorted by salary
Throughout this adventure, I've turbocharged my SQL toolkit with some serious firepower:
- 🧩 Complex Query Crafting: Mastered the art of advanced SQL, merging tables like a pro and wielding WITH clauses for ninja-level temp table maneuvers.
- 📊 Data Aggregation: Got cozy with GROUP BY and turned aggregate functions like COUNT() and AVG() into my data-summarizing sidekicks.
- 💡 Analytical Wizardry: Leveled up my real-world puzzle-solving skills, turning questions into actionable, insightful SQL queries.
From the analysis, several general insights emerged:
- Top-Paying Data Engineer Jobs: The highest-paying jobs for data engineers that allow remote work offer a wide range of salaries, the highest at $330,000!
- Skills for Top-Paying Jobs: High-paying data engineer jobs require advanced proficiency in SQL, suggesting it’s a critical skill for earning a top salary.
- Most In-Demand Skills: SQL is also the most demanded skill in the data engineer job market, thus making it essential for job seekers.
- Skills with Higher Salaries: Specialized skills are associated with the highest average salaries, indicating a premium on niche expertise.
- Optimal Skills for Job Market Value: SQL leads in demand and offers for a high average salary, positioning it as one of the most optimal skills for data analysts to learn to maximize their market value.