I developed a console-based task management system designed to simulate a real-world workflow environment where users can create, update, assign, and track tasks through structured operations.
The project focuses on how object-oriented programming (OOP), modular design, and layered architecture can be used to build scalable task tracking systems similar to those used in enterprise project management tools.
It demonstrates how structured Java applications handle task lifecycle management, user interaction, and data persistence logic through clean class separation and reusable components.
Java — Core programming language for system logic
Object-Oriented Programming (OOP) — Encapsulation, classes, and modular design
Data Structures — Lists/collections for task storage and manipulation
**GitHub URL: https://github.com/FatmaElMahdi1000/Task-Management-System---Java
I developed a relational database system focused on managing multilingual localization workflows, vendor assignments, and financial reporting inside a simulated Localization Service Provider (LSP) environment.
The project explores how structured relational systems can support real-world translation operations, workflow management, and profitability analysis through normalized database architecture and analytical SQL reporting.
https://github.com/FatmaElMahdi1000/SQL-based-Translation-Management-System-TMS-
Oracle SQL — Relational Database Design — ERD Modeling — SQL Views — Aggregate Queries — Referential Integrity — Virtual Columns — Business Reporting
Designed and implemented a four-table relational database using Oracle SQL to manage store transactions. Engineered a many-to-many "bridge table / Associative Table" (Order_Line) to connect inventory with customer orders while maintaining strict referential integrity. Key concepts demonstrated.
(Relational Schema & ERD(using Diagramming feature in VS Code - Oracle extension) , Data Integrity: Check Constraint, Business Analytics: Join based query, Composite Keys)
**Git Project: https://github.com/FatmaElMahdi1000/SQL-Oracle/blob/main/test.sql
Designed and simulated a two-LAN routed network using Cisco Packet Tracer to demonstrate switching, routing, ARP resolution, default gateway behavior, and frame encapsulation. Built a Python-based modulation visualizer to simulate Physical Layer signal transmission using ASK technique, connecting networking theory with real signal behavior. Key concepts demonstrated:
IP routing and subnetting
MAC addressing and frame forwarding
Router packet forwarding
Digital-to-Analog modulation
Layered network architecture
You can check both the presentation and the video recorded of Cisco.
I developed ATM simulator focusing on secure account management and structured data logging. This project serves as a foundational exploration of how separate software components interact to handle secure, real time data processing
Git hub URL: https://github.com/FatmaElMahdi1000/Coding_in_Java/tree/main/src/ATMProject
Technologies I used:
Java – OOP – Swing (JOptionPane) – Java Time API
I developed a secure, token-authenticated backend system designed for Recycling Vending Machines (RVMs). This project bridges the gap between IoT hardware and user rewards by providing a reliable way to log recycling deposits and calculate eco-credits/points that user can get in real-time.
Security-First Design: Implementation of Token Authentication
Automated Business Logic
Scalable API Architecture: Designed RESTful endpoints for user registration, machine logging, and account summaries using Django REST Framework (DRF).
Python – Django – Django REST Framework – Token Auth
Hardware 4-to-16 line decoder circuit (Digital Logic Project)
I built a 4-to-16 line decoder circuit using a 74154 decoder IC I wired four input lines using a DIP switch with pull-up resistors to define valid logic levels, connected the active-LOW enable pins to GND, and routed the decoder outputs to LEDs. Only one LED turns ON at a time based on the 4-bit binary input.
What this shows:
Clear understanding of binary decoding (4-bit → 16 outputs)
Practical use of active-LOW logic and enable pins
Ability to design, wire, and debug a pure hardware digital system
Understanding of how decoders are used in address decoding, memory selection, and CPUs
Components I used:
ICs (74154) – Arduino (as a power source) – LEDs – Resistors – Jumpers – Dip Switch
I built a full-adder circuit using real logic ICs and combined multiple gates to produce both the Sum and Carry-Out outputs. I used two XOR gates from one IC and two AND gates from another IC, added OR gate, the third IC, wired them together on a breadboard, and verified the logic using buttons for inputs and LEDs for outputs. The Arduino provided only the 5V supply.
What this shows:
binary addition scales beyond a single bit
Ability to combine multiple logic gates to form a more complex circuit
Hands-on experience with hardware used in arithmetic units like ALUs and CPUs
Components I used:
ICs (XOR, OR, AND) – Arduino (as a power source) – LEDs – Resistors – Jumpers – Dip Switch
This is one of my first steps into understanding hardware logic. I built a half-adder circuit using basic logic principles
What this assists with:
Understanding of binary logic
Ability to build small hardware-related projects build on them, right after
A starting point for deeper digital electronics work
Components I used: ICs (XOR, AND) - Arduino(As a power supply) - LEDs - Resistor - Jumpers - Dip Switch
A small shell program written in C. It handles basic commands, executes programs with execve, displays a prompt, and deals with simple user input.
Why it matters:
Good introduction to system-level programming
Strengthens my C fundamentals
Helps build the mindset needed for embedded work
A fun project where I practiced game logic, event handling, and real-time updates using Python (Pygame). I expanded the original game with several new features to make it more interactive and enjoyable.
Key Additions I Implemented:
Ship explosion animation when aliens hit it — more dramatic feedback.
Background music playing during the game.
Pause feature — press P any time to pause the game.
Mute toggle — press M to mute/unmute music instantly.
Exit & retry system — proper exit button after losing, with the option to retry for a second, third, etc., attempt.
Custom game-over music for a more polished ending.
Download game files from this link and start playing: https://lnkd.in/drrXu_4f