Skip to content
View ali-alemami's full-sized avatar
🎯
Locked In
🎯
Locked In

Highlights

  • Pro

Block or report ali-alemami

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ali-alemami/README.md

Ali Alemami

Systems & Software Engineer β€’ Amman, Jordan
Computer Science Student @ The Hashemite University & 42 Amman Cadet

Systems software engineer focused on low-level C and C++, POSIX systems programming, concurrency, and algorithmic optimization.


Featured Systems Projects

  • push_swap β€” Dual-stack radix sort on array stacks using coordinate compression to bound passes to $\log_2(N)$; lookahead bit inspection in Stack B cuts redundant transfers, coupled with dedicated heuristic solvers for $N \le 5$.
  • philo β€” Deadlock-free, race-free simulation of Dijkstra's Dining Philosophers using pthreads and mutex locks; built asynchronous monitoring routines with microsecond-precision timers preventing starvation.
  • pipex β€” Unix pipeline engine reproducing shell redirection (< infile cmd1 | cmd2 > outfile) using fork, pipe, dup2, and execve; implements POSIX process synchronization, multi-fd stream redirection, PATH resolution, and child exit status propagation.
  • cpps β€” 42 C++ Modules 00–09 enforcing strict Orthodox Canonical Form, subtype polymorphism, template metaprogramming, and STL algorithms; includes the Ford-Johnson Merge-Insert Sort with Jacobsthal sequence pairing.
  • minitalk β€” Inter-process communication system in C transmitting arbitrary strings bit-by-bit using exclusively UNIX signals (SIGUSR1, SIGUSR2) with PID acknowledgment.

Master Repositories & Archives

  • 42-core β€” Central curriculum directory tracking low-level C, systems, and algorithms implementations at 42 Amman.
  • Programming-Advices-Core β€” Comprehensive coursework repository containing 225+ algorithmic solutions across 5 levels, 5 normalized relational database schemas (3NF), and foundational C++ exercises.

Technical Skills

Domain Technologies & Concepts
Programming Languages C (POSIX/C99), C++ (C++98/C++11/C++17), SQL (T-SQL), Bash
Systems & Concurrency POSIX APIs, Pthreads, Mutex Synchronization, Unix Signals & Pipes, File Descriptors, POSIX IPC, Memory Management (Valgrind, ASan)
CS Fundamentals Data Structures & Algorithms, Orthodox Canonical Form, Computer Networks, Relational Database Normalization (3NF)
Tools & Infrastructure Linux/Unix, Git/GitHub, Docker & Docker Compose, Makefiles, NGINX, GDB, SQL Server
Languages (Spoken) Arabic (Native), English (Fluent / Professional)

Experience & Education

  • 42 Amman β€” Software Engineering Cadet / Peer Developer | 2025 – Present
    Structured engineering curriculum; conducted 50+ peer technical evaluations and pair-programmed in teams.
  • The Hashemite University β€” BSc in Computer Science | 2022 – 2026 (Expected)
  • Portfolio: ali-alemami.github.io
  • Contact: ali.alemami01@gmail.com β€’ LinkedIn

Pinned Loading

  1. philo philo Public

    An algorithmic simulation of the Dining Philosophers problem in C, solving concurrency and race conditions using threads and mutexes.

    C

  2. push_swap push_swap Public

    A dual-stack sorting algorithm in C using coordinate compression and radix sort.

    C

  3. cpps cpps Public

    42 School C++ Modules (CPP 00-09) covering C++98, Orthodox Canonical Form, templates, and the STL.

    C++

  4. libft libft Public

    Custom C standard library implementing standard libc functions and linked list utilities.

    C

  5. minitalk minitalk Public

    A client-server communication program in C that transmits strings via inter-process communication (IPC) using only UNIX signals.

    C

  6. pipex pipex Public

    A UNIX mechanism simulator in C that replicates shell pipe routing (< file1 cmd1 | cmd2 > file2) using pipe(), fork(), and execve().

    C