Saturday, September 26, 2026

Tech Career Path: A Guide for Computer Science Students

 


المسار

اللغات الأساسية / قواعد البيانات

أهم التقنيات والأدوات

ما يجب تعلمه 

Roles

Software Development –Backend- Java


تطوير البرمجيات - جافا

Java, SQL/Oracle

Spring Boot, Spring MVC, JPA/Hibernate, Maven/Gradle, Git, Docker

OOP, Algorithms, Data Structures, REST APIs, Databases, Authentication

Java Backend Developer, Software Engineer

Software Development – Backend - C# / .NET


تطوير البرمجيات - سي شارب

C#, SQL/Oracle

.NET, ASP.NET Core, Entity Framework, LINQ, NuGet, Git, Docker

OOP, Algorithms, Data Structures, REST APIs, Web APIs, SignalR, Databases, Authentication

.NET Developer, Backend Developer, Software Engineer

Software Development – Backend - Python


تطوير البرمجيات - بايثون

Python, SQL

Django / FastAPI / Flask, SQLAlchemy, Git, Docker

OOP, APIs, Databases, Authentication

Python Developer, Backend Developer

Frontend Development


تطوير الواجهات الامامية

HTML, CSS, JavaScript, TypeScript

React, Angular, Vue, npm, Git

DOM, Responsive Design, REST APIs, State Management

Frontend Developer, Web Developer

Full-Stack Development


تطوير البرمجيات (تطوير الواجهات الخلفية + امامية)

JavaScript/TypeScript + Backend Language (C#/Java/Python)  + SQL/Oracle/Postgres

React/Angular + Spring/.NET/Node.js + Docker

Frontend + Backend + Database + Deployment

Full-Stack Developer

Software Testing / QA


اختبار البرمجيات

Java / C# / Python

Selenium, Playwright, Cypress, Postman, JUnit, TestNG, NUnit, Git, CI/CD

Test Cases, Test Plans, API Testing, UI Automation, Regression Testing

QA Engineer, Automation Tester, SDET

Systems Analysis


تحليل النظم

SQL + أساسيات البرمجة

UML, BPMN, Jira, Confluence, Draw.io, SQL

Requirements, Use Cases, User Stories, Process Modeling, Database Modeling

System Analyst, Business/System Analyst

Data Analysis


تحليل البيانات

Python, SQL

Pandas, NumPy, Excel, Power BI, Tableau, Jupyter

Statistics, Data Cleaning, Visualization, SQL Queries

Data Analyst, BI Analyst

Data Science / AI


علوم البيانات - الذكاء الاصطناعي

Python, SQL

NumPy, Pandas, Scikit-learn, PyTorch/TensorFlow, Jupyter

Statistics, ML, Data Processing, Model Evaluation

Data Scientist, ML Engineer

DevOps / Cloud


نهج التطوير والتشغيل / الحوسبة السحابية



Bash, Python + أساسيات لغة برمجة

Linux, Git, Docker, Kubernetes, CI/CD, AWS/Azure/GCP

Linux, Networking, Containers, Automation, Deployment

DevOps Engineer, Cloud Engineer


Monday, September 14, 2026

A → Z Software Development Lifecycle

A strong end-to-end process can be organized into 10 major stages, with specific deliverables/documents at each stage. 


#

Stage

Main question

Key outputs / documents

1

Idea & Discovery

What are we trying to solve?

Product Vision, Problem Statement, Business Case

2

Feasibility & Planning

Is it possible and worthwhile?

Feasibility Study, Project Charter, Initial Plan

3

Requirements

What exactly should the system do?

BRD, PRD, SRS, User Stories, Use Cases

4

Analysis

How should the requirements work together?

Process Models, Use Cases, Domain Model, Data Requirements

5

Architecture & Design

How will we build it?

Architecture Document, HLD, LLD, API/Data Design

6

Development

How do we implement it?

Source Code, Code Standards, Build Configuration

7

Testing & Quality

Does it work correctly and safely?

Test Strategy, Test Plan, Test Cases, Automation, Defects

8

Release Preparation

Is it ready for production?

Release Plan, Release Notes, Deployment Plan, Go-Live Checklist

9

Deployment & Delivery

How do we put it into production?

Deployment Scripts, CI/CD Pipeline, Runbook

10

Operations & Maintenance

How do we keep improving it?

Monitoring, Incident Reports, Change Requests, Maintenance Releases


And then the lifecycle repeats:

Idea → Requirements → Design → Development → Testing → Release → Production → Feedback → Change → Development…

Thinking about the lifecycle as four connected chains:

1. Business chain

Problem → Business Goal → Product → Requirements

2. Engineering chain

Requirements → Analysis → Architecture → Design → Code

3. Quality chain

Requirements → Risk → Test Analysis → Test Design → Automation

→ Evidence → Quality Decision

4. Delivery chain

Code → Build → Test → Deploy → Monitor → Feedback

This gives you a much more mature view of software engineering than simply:

Requirements → Development → Testing → Deployment.