Skill Gap Analysis

Personal Skills Assessment: Mishal & Almas

Program: Applied Business Analytics, Boston University

This analysis evaluates our current skill proficiency levels for skills identified as important in the job market based on our Exploratory Data Analysis of job postings from the Lightcast dataset.

Methodology

  • Market Demand: Percentage of job postings mentioning each skill (from EDA)
  • Personal Proficiency: Self-assessed skill level (0-100%)
  • Status Thresholds:
    • 🎯 Focus Area: Below 50% proficiency - needs significant development
    • On Track: 50-70% proficiency - developing well
    • Strong: Above 70% proficiency - job-ready competency
Code
import pandas as pd
import numpy as np
import plotly.graph_objects as go
import plotly.io as pio
pio.renderers.default = "plotly_mimetype+notebook"

# Market demand from EDA (% of job postings mentioning each skill)
market_demand = {
    'Data Analysis': 76,
    'SQL': 52,
    'Python': 32,
    'Tableau': 31,
    'Communication': 43,
    'Excel': 28,
    'Statistics': 25,
    'Power BI': 22,
    'Machine Learning': 18,
    'R': 15,
    'Project Management': 20,
    'Business Intelligence': 35
}

# Personal skill proficiency levels (0-100%)
mishal_skills = {
    'Data Analysis': 55,
    'SQL': 30,
    'Python': 70,
    'Tableau': 70,
    'Communication': 70,
    'Excel': 55,
    'Statistics': 50,
    'Power BI': 75,
    'Machine Learning': 30,
    'R': 25,
    'Project Management': 30,
    'Business Intelligence': 60
}

almas_skills = {
    'Data Analysis': 70,
    'SQL': 50,
    'Python': 60,
    'Tableau': 0,
    'Communication': 60,
    'Excel': 80,
    'Statistics': 60,
    'Power BI': 70,
    'Machine Learning': 50,
    'R': 55,
    'Project Management': 20,
    'Business Intelligence': 60
}

skills_df = pd.DataFrame({
    'Skill': list(market_demand.keys()),
    'Market_Demand': list(market_demand.values()),
    'Mishal': [mishal_skills[s] for s in market_demand.keys()],
    'Almas': [almas_skills[s] for s in market_demand.keys()]
})

Skill Gap Analysis Dashboard

This table shows market demand alongside our proficiency levels, with status indicators based on skill competency.

Code
# Sort by market demand (highest first)
skills_sorted = skills_df.sort_values('Market_Demand', ascending=False).reset_index(drop=True)

# Status based on proficiency level (not gap)
def get_status(proficiency):
    if proficiency > 70:
        return '✅ Strong'
    elif proficiency >= 50:
        return '⚡ On Track'
    else:
        return '🎯 Focus Area'

skills_sorted['Mishal_Status'] = skills_sorted['Mishal'].apply(get_status)
skills_sorted['Almas_Status'] = skills_sorted['Almas'].apply(get_status)

# Color coding for status
def get_cell_color(status):
    if '✅' in status:
        return 'rgba(0, 204, 150, 0.3)'
    elif '⚡' in status:
        return 'rgba(255, 193, 7, 0.3)'
    else:
        return 'rgba(239, 85, 59, 0.25)'

mishal_colors = [get_cell_color(s) for s in skills_sorted['Mishal_Status']]
almas_colors = [get_cell_color(s) for s in skills_sorted['Almas_Status']]

cell_colors = [
    ['rgba(248, 249, 250, 0.8)'] * len(skills_sorted),
    ['rgba(99, 110, 250, 0.15)'] * len(skills_sorted),
    ['rgba(239, 85, 59, 0.1)'] * len(skills_sorted),
    mishal_colors,
    ['rgba(0, 204, 150, 0.1)'] * len(skills_sorted),
    almas_colors
]

headers = ['<b>Skill</b>', '<b>Market<br>Demand</b>',
           '<b>Mishal<br>Level</b>', '<b>Mishal<br>Status</b>',
           '<b>Almas<br>Level</b>', '<b>Almas<br>Status</b>']

fig = go.Figure()
fig.add_trace(go.Table(
    header=dict(
        values=headers,
        fill_color='#2c3e50',
        font=dict(color='white', size=13, family='Arial'),
        align='center',
        height=45,
        line=dict(color='white', width=2)
    ),
    cells=dict(
        values=[
            skills_sorted['Skill'],
            [f"{v}%" for v in skills_sorted['Market_Demand']],
            [f"{v}%" for v in skills_sorted['Mishal']],
            skills_sorted['Mishal_Status'],
            [f"{v}%" for v in skills_sorted['Almas']],
            skills_sorted['Almas_Status']
        ],
        fill_color=cell_colors,
        font=dict(color='#2c3e50', size=12, family='Arial'),
        align=['left', 'center', 'center', 'center', 'center', 'center'],
        height=35,
        line=dict(color='rgba(0,0,0,0.1)', width=1)
    )
))

fig.update_layout(
    title=dict(
        text='<b>Skill Gap Analysis Dashboard</b><br><sup>🎯 Focus Area (<50%) | ⚡ On Track (50-70%) | ✅ Strong (>70%)</sup>',
        font=dict(size=18, color='#2c3e50', family='Arial Black'),
        x=0.5,
        y=0.98
    ),
    height=550,
    width=900,
    margin=dict(t=80, b=20, l=20, r=20),
    paper_bgcolor='white'
)

fig.write_image('figures/skill_gap_table.png', scale=2)
fig.show()

Conclusion

Based on our skill proficiency assessment against market-demanded skills from 47,000+ job postings:

Mishal’s Profile

  • Strong (>70%): Power BI (75%), Python (70%), Tableau (70%), Communication (70%) - job-ready in visualization and programming
  • On Track (50-70%): Data Analysis (55%), Excel (55%), Statistics (50%), Business Intelligence (60%)
  • Focus Areas (<50%): SQL (30%), Machine Learning (30%), R (25%), Project Management (30%)
  • Priority: SQL is critical (52% of jobs require it) - should be the top development focus

Almas’s Profile

  • Strong (>70%): Excel (80%), Power BI (70%)
  • On Track (50-70%): Data Analysis (70%), SQL (50%), Python (60%), Communication (60%), Statistics (60%), Machine Learning (50%), R (55%), Business Intelligence (60%)
  • Focus Areas (<50%): Tableau (0%), Project Management (20%)
  • Priority: Tableau is in high demand (31% of jobs) - learning this would complete the visualization skillset

Key Insights

  • Both team members have complementary strengths that benefit our collaborative work
  • High-demand skills like Data Analysis (76% of jobs) and SQL (52%) should be prioritized for development
  • The market values a mix of technical skills (SQL, Python) and soft skills (Communication)

Analysis conducted as part of AD688 Cloud Analytics for Business - Applied Business Analytics at Boston University