Skip to content
View mdhamed238's full-sized avatar

Highlights

  • Pro

Block or report mdhamed238

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.

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
mdhamed238/README.md

Mohamed Hamed 👋

Building reliable software & contributing to open source

Full-Stack Software Engineer | Open Source Contributor @PMD · @Checkstyle · @WeasyPrint

Portfolio LinkedIn Email


About Me

Full-stack engineer working across Java/Spring Boot, Angular/React, TypeScript, and Python — building REST APIs, microservices, and the frontends that consume them. I care about code quality and reliability, which is what pulled me toward static analysis and rendering engines: I contribute to open source projects like PMD, Checkstyle, and WeasyPrint on the side.

🔍 What I'm Into

  • Static analysis & linters — how tools like PMD and Checkstyle parse, model, and flag code
  • Rendering engines — HTML/CSS-to-PDF pipelines and spec-compliant text handling (WeasyPrint)
  • Compilers & language tooling — lexers, parsers, type checkers, and codegen
  • Clean, well-tested backend systems — API design, async processing, and CI/CD

🚀 Open Source Contributions

Passionate about developer tooling and code quality. Focused on static analysis and rendering engines used by millions of developers worldwide.

Project Focus Highlights
PMD Static Analysis Fixed Java parser edge cases for modern language constructs. Merged in v7.20.0 & v7.21.0.
Checkstyle Linting Fixed IndentationCheck bugs & improved violation messages (#19684, #18972).
WeasyPrint HTML→PDF Rendering Implemented language-aware CSS text-transform (TR, GR, LT, AZ). Merged in v68.0.

🔬 Featured Projects

MiniC-RiscV Toolchain — Compiler Construction
  • Built: Full compiler pipeline from scratch — lexer/parser (ANTLR4) → static type checker → interpreter → RISC-V assembly backend.
  • Validated: Automated test suite comparing interpreter output against gcc, including undefined behavior edge cases.
  • Stack: Python · ANTLR4 · RISC-V Assembly · Docker
  • Key learning: AST manipulation, static typing systems, and low-level code generation.

🔗 github.com/mdhamed238/MiniC-RV-Toolchain

Cloud Image Processing API — Async Image Transformation Service
  • Built: Stateless REST API with async processing, Redis caching to eliminate redundant computation, and scalable object storage on Cloudflare R2.
  • Stack: FastAPI · Redis · Docker · JWT · GitHub Actions

🔗 github.com/mdhamed238/cloud_image_api


🛠 Expertise

Core languages & frameworks Java (Spring Boot · Spring WebFlux) · Python (FastAPI) · TypeScript · Angular · React

Data PostgreSQL · MongoDB · Redis · MariaDB

Quality & Testing Clean Code · Design Patterns · PMD · Checkstyle · Cypress (E2E) · JUnit · Jest

DevOps & Cloud Docker · GitLab CI/CD · GitHub Actions · Amazon S3 · Cloudflare R2 · Linux


📊 GitHub Stats

GitHub Stats Top Languages

LinkedIn Portfolio

Pinned Loading

  1. checkstyle checkstyle Public

    Forked from checkstyle/checkstyle

    Checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Google Java Style Guide and Sun Code Conventions, but is highly co…

    Java

  2. mdhamed238 mdhamed238 Public

    Contains README configuration for my github profile

    2

  3. MiniC-RiscV-Toolchain MiniC-RiscV-Toolchain Public

    Python

  4. expo-notes-app expo-notes-app Public

    TypeScript 2

  5. Sewarli Sewarli Public

    TypeScript

  6. dvachette/peluchards-nuit-info-2k24 dvachette/peluchards-nuit-info-2k24 Public

    Nuit de l'info 2024

    TypeScript 1