Career Paths for Software
Professionals
Ahmed Misbah
Main Career Paths
• Software
Development
• Quality Engineering
• Project Management
• UI/UX Design
• Business
Development
• Business Analysis
• Databases and Data
Warehousing
• Big Data
• Data Science
• Security
• Agile Couching
• DevOps
• IT Administration
• Embedded Systems
• Academic Career
Software Development
• Open-source technologies based on known
programming languages
• Product/Technology Consultant:
– Microsoft
– Oracle
– IBM
– SAP
Software Development
• Full Stack Developer
• Web Developer
• Mobile Developer
• Backend Developer
• Integrator/Middleware
Software Development
Associate/Trainee
Software
Developer
Software
Developer
Senior Software
Developer
Associate
Technical Lead
Technical Lead
Senior Technical
Lead
Associate
Architect
Architect
Senior Architect
VP Software
Development
Corporate
Management
Quality Engineering
• Quality Control Engineer:
– Manual Testing Engineer
– Test Automation Engineer
– Performance Testing Engineer
• Quality Assurance Engineer: monitors
the software engineering processes and methods
used to ensure quality
• Software Engineer In Test (SeT)
Quality Engineering
Associate/Trainee
Quality Engineer
Quality Engineer
Senior Quality
Engineer
Associate Quality
Lead
Quality Lead
Senior Quality
Lead
Consultant
Specialized
Service
Consultant
Service
Manager
VP Specialized
Services
Corporate
Management
Business
Consultant
Product
Manager
VP Product
Management
Corporate
Management
Project Management
Management
Trainee
Associate
Project
Manager
Project
Manager
Senior Project
Manager
Associate
Delivery
Manager
Delivery
Manager
Senior
Delivery
Manager
VP Product
Delivery
Corporate
Management
UI/UX Design
Associate/Trainee
UX Engineer
UX Engineer
Senior UX
Engineer
Associate UX Lead
UX LeadSenior UX LeadConsultant
UX
Consultant
UX Research
Consultant
HoD UX R&D VP R&D
Corporate
Management
CA/Marketing
Consultant
Sales
Development
Manager
VP Marketing
Corporate
Management
Business Analysis
Associate/Trainee
Business Analyst
Business Analyst
Senior Business
Analyst
Associate
Business
Consultant
Business
Consultant
Senior Business
Consultant
Associate Product
Manager
Product Manager
Senior Product
Manager
VP Product
Management
Corporate
Management
Databases and Data Warehouses
• DB Developer
• DB Administrator
• Data Warehouse Engineer
Big Data
• Big Data Developer:
– Apache Hadoop
– Apache Spark
– Apache Flink
– Apache Storm
– Apache Kafka
– Apache Cassandra
– Cloudera
– Datastax
– Hortonworks
– Splunk
• Big Data Administrator
Data Science
• Data scientists are big data wranglers. They
take an enormous mass of messy data points
(unstructured and structured) and use their
formidable skills in math, statistics and
programming to clean, massage and organize
them. Then they apply all their analytic
powers – industry knowledge, contextual
understanding, skepticism of existing
assumptions – to uncover hidden solutions to
business challenges.
Data Science
A Data Scientist may be required to:
• Conduct undirected research and frame open-
ended industry questions
• Extract huge volumes of data from multiple
internal and external sources
• Employ sophisticated analytics programs,
machine learning and statistical methods to
prepare data for use in predictive and
prescriptive modeling
• Thoroughly clean and prune data to discard
irrelevant information
Data Science
• Explore and examine data from a variety of angles to
determine hidden weaknesses, trends and/or
opportunities
• Devise data-driven solutions to the most pressing
challenges
• Invent new algorithms to solve problems and build new
tools to automate work
• Communicate predictions and findings to management
and IT departments through effective data
visualizations and reports
• Recommend cost-effective changes to existing
procedures and strategies
Data Science
Technical Skills:
• Math (e.g. linear algebra, calculus and probability)
• Statistics (e.g. hypothesis testing and summary statistics)
• Machine learning tools and techniques (e.g. k-nearest neighbors,
random forests, ensemble methods, etc.)
• Software engineering skills (e.g. distributed computing, algorithms
and data structures)
• Data mining
• Data cleaning
• Data visualization (e.g. ggplot and d3.js) and reporting techniques
• Unstructured data techniques
• R languages
• SQL databases and database querying languages
• Python (most common), C/C++, Java, Perl
• Big data platforms like Hadoop
• Cloud tools like Amazon S3
Security
Agile Couching
• Iteration Manager/Scrum Master
• Agile Couch/Consultant
DevOps Engineer / Site Reliability
Engineer
IT Administration
Associate/Trainee
IT Support
Engineer
IT Support
Engineer
Senior IT Support
Engineer
Associate IT
Support Lead
IT Support Lead
Senior IT Support
Lead
Associate IT
Manager
IT Manager
Senior IT
Manager
VP MIS
Corporate
Management
Embedded Systems
Technical Skills:
• Excellent coding skill in hardware-related C programming
• Experience doing low-level optimization in C assembly
• Experience with Git or other source code management system
• Experience with embedded Linux kernel configuration and device
driver development
• Skilled in specialized techniques for embedded programming, such
as debouncing switches
• Able to read electronics schematics and troubleshoot problems
• Able to use an oscilloscope, multimeter, soldering iron and other
basic electronics equipment
• killed in Java and Android development
• Able to use Perl or Python for scripting, for example when
modifying simple text files
• Have a solid understanding of the software development and
project management life cycle
Academic Career
Academic Career
Choosing the best path which suites you!
• Seek where your passion is…
• Assess your competencies…
• Work on the required core competencies…
• Test your personality…
• Accept the challenge, never judge without trying…
• Never fear to switch paths…
• Look up to a role model and be inspired….

Career Paths for Software Professionals

  • 1.
    Career Paths forSoftware Professionals Ahmed Misbah
  • 2.
    Main Career Paths •Software Development • Quality Engineering • Project Management • UI/UX Design • Business Development • Business Analysis • Databases and Data Warehousing • Big Data • Data Science • Security • Agile Couching • DevOps • IT Administration • Embedded Systems • Academic Career
  • 3.
    Software Development • Open-sourcetechnologies based on known programming languages • Product/Technology Consultant: – Microsoft – Oracle – IBM – SAP
  • 5.
    Software Development • FullStack Developer • Web Developer • Mobile Developer • Backend Developer • Integrator/Middleware
  • 6.
    Software Development Associate/Trainee Software Developer Software Developer Senior Software Developer Associate TechnicalLead Technical Lead Senior Technical Lead Associate Architect Architect Senior Architect VP Software Development Corporate Management
  • 7.
    Quality Engineering • QualityControl Engineer: – Manual Testing Engineer – Test Automation Engineer – Performance Testing Engineer • Quality Assurance Engineer: monitors the software engineering processes and methods used to ensure quality • Software Engineer In Test (SeT)
  • 8.
    Quality Engineering Associate/Trainee Quality Engineer QualityEngineer Senior Quality Engineer Associate Quality Lead Quality Lead Senior Quality Lead Consultant Specialized Service Consultant Service Manager VP Specialized Services Corporate Management Business Consultant Product Manager VP Product Management Corporate Management
  • 9.
  • 10.
    UI/UX Design Associate/Trainee UX Engineer UXEngineer Senior UX Engineer Associate UX Lead UX LeadSenior UX LeadConsultant UX Consultant UX Research Consultant HoD UX R&D VP R&D Corporate Management CA/Marketing Consultant Sales Development Manager VP Marketing Corporate Management
  • 12.
    Business Analysis Associate/Trainee Business Analyst BusinessAnalyst Senior Business Analyst Associate Business Consultant Business Consultant Senior Business Consultant Associate Product Manager Product Manager Senior Product Manager VP Product Management Corporate Management
  • 13.
    Databases and DataWarehouses • DB Developer • DB Administrator • Data Warehouse Engineer
  • 14.
    Big Data • BigData Developer: – Apache Hadoop – Apache Spark – Apache Flink – Apache Storm – Apache Kafka – Apache Cassandra – Cloudera – Datastax – Hortonworks – Splunk • Big Data Administrator
  • 15.
    Data Science • Datascientists are big data wranglers. They take an enormous mass of messy data points (unstructured and structured) and use their formidable skills in math, statistics and programming to clean, massage and organize them. Then they apply all their analytic powers – industry knowledge, contextual understanding, skepticism of existing assumptions – to uncover hidden solutions to business challenges.
  • 16.
    Data Science A DataScientist may be required to: • Conduct undirected research and frame open- ended industry questions • Extract huge volumes of data from multiple internal and external sources • Employ sophisticated analytics programs, machine learning and statistical methods to prepare data for use in predictive and prescriptive modeling • Thoroughly clean and prune data to discard irrelevant information
  • 17.
    Data Science • Exploreand examine data from a variety of angles to determine hidden weaknesses, trends and/or opportunities • Devise data-driven solutions to the most pressing challenges • Invent new algorithms to solve problems and build new tools to automate work • Communicate predictions and findings to management and IT departments through effective data visualizations and reports • Recommend cost-effective changes to existing procedures and strategies
  • 18.
    Data Science Technical Skills: •Math (e.g. linear algebra, calculus and probability) • Statistics (e.g. hypothesis testing and summary statistics) • Machine learning tools and techniques (e.g. k-nearest neighbors, random forests, ensemble methods, etc.) • Software engineering skills (e.g. distributed computing, algorithms and data structures) • Data mining • Data cleaning • Data visualization (e.g. ggplot and d3.js) and reporting techniques • Unstructured data techniques • R languages • SQL databases and database querying languages • Python (most common), C/C++, Java, Perl • Big data platforms like Hadoop • Cloud tools like Amazon S3
  • 19.
  • 20.
    Agile Couching • IterationManager/Scrum Master • Agile Couch/Consultant
  • 21.
    DevOps Engineer /Site Reliability Engineer
  • 22.
    IT Administration Associate/Trainee IT Support Engineer ITSupport Engineer Senior IT Support Engineer Associate IT Support Lead IT Support Lead Senior IT Support Lead Associate IT Manager IT Manager Senior IT Manager VP MIS Corporate Management
  • 23.
    Embedded Systems Technical Skills: •Excellent coding skill in hardware-related C programming • Experience doing low-level optimization in C assembly • Experience with Git or other source code management system • Experience with embedded Linux kernel configuration and device driver development • Skilled in specialized techniques for embedded programming, such as debouncing switches • Able to read electronics schematics and troubleshoot problems • Able to use an oscilloscope, multimeter, soldering iron and other basic electronics equipment • killed in Java and Android development • Able to use Perl or Python for scripting, for example when modifying simple text files • Have a solid understanding of the software development and project management life cycle
  • 24.
  • 25.
  • 26.
    Choosing the bestpath which suites you! • Seek where your passion is… • Assess your competencies… • Work on the required core competencies… • Test your personality… • Accept the challenge, never judge without trying… • Never fear to switch paths… • Look up to a role model and be inspired….