Skip to content
View mdarkanurl's full-sized avatar

Block or report mdarkanurl

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 supported. This note will be visible to only you.
Report abuse

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

Report abuse
mdarkanurl/readme.md

Mohammad Arkan β€” Backend Developer πŸ‘¨β€πŸ’»

Building reliable, scalable backend systems with Node.js, TypeScript, SQL & NoSQL β€” from real-time platforms to microservices and background worker systems.


πŸ”­ About Me

I'm a backend engineer who enjoys designing and implementing production-ready systems: REST APIs, real-time features, background workers, message-driven microservices, and robust auth flows. I care about clean architecture, strong error handling, automated tests, and observability.

Core strengths: Node.js, TypeScript, PostgreSQL, MySQL, MongoDB, Redis, RabbitMQ, Kafka, Docker, Prisma/Sequelize, WebSockets, REST, Microservices, Jest, Supertest, CI/CD.


πŸ› οΈ Tech Stack (high level)

  • Languages: JavaScript, TypeScript, SQL
  • Runtime / Frameworks: Node.js, Express.js
  • Databases: PostgreSQL, MySQL, MongoDB, Redis
  • Messaging / Streaming: RabbitMQ, Kafka, Debezium (CDC)
  • Infrastructure: Docker, GitHub, Git, GitHub Actions, CI/CD pipelines, Supabase
  • Testing & Tools: Jest, Supertest, Postman, Testcontainers
  • Patterns: OOP, Event-driven architecture, Microservices, WebSockets

⭐ Featured Projects

Tech Stack: TypeScript, Node.js, Express.js, PostgreSQL + Prisma, Redis, RabbitMQ, Debezium, Docker (execution workers) Highlights:

  • Secure code execution: user submissions run inside isolated Docker worker containers.
  • Contest system with real-time leaderboards and rank updates.
  • Background job processing via RabbitMQ; caching and fast lookups with Redis.
  • Secure Auth and OAuth system using JWT token and Google, GitHub OAuth.
  • CDC (Debezium) for syncing/streaming DB events where needed.
  • Clean OOP design, error handling, and test coverage for core flows.

Tech Stack: Node.js, TypeScript, PostgreSQL (Prisma), RabbitMQ, JWT, Resend, Zod Highlights:

  • Microservices: Users (auth), Admin, Email.
  • JWT auth with account verification, password recovery, and token refresh.
  • Async email & notifications via RabbitMQ β†’ Email Service (Resend).
  • Prisma + Zod for type-safe DB access and runtime validation.

Tech Stack: Express.js, JWT, MySQL, bcrypt.js, Joi Highlights:

  • JWT auth: signup, login, logout with secure password hashing (bcrypt).
  • Users can create / update / delete their own posts; role-based access restricts edits/deletes to owners and admins.
  • Request validation and schemas powered by Joi for reliable input handling.
  • Protected routes and auth middleware for clean, secure endpoint control.

Tech Stack: Node.js, Express, Passport.js, JWT, bcrypt.js, MongoDB (Mongoose) Highlights:

  • User registration & login with secure password hashing using bcrypt.
  • Passport.js handles authentication strategies; JWT used for stateless session management.
  • Middleware for protected routes and role-based access control.
  • Clean separation of auth flows (signup, login, refresh tokens, logout) for easy integration.

πŸ“‚ Other notable work

  • Worker systems and background processing examples (Dockerized).
  • Fully Dockerized microservices Backend applications examples (DeshCode).
  • Integrations for email & notifications.
  • Several small utilities and boilerplates demonstrating robust error handling and testing patterns.
  • Building Backend app with microservices architecture.

🧩 Architecture & Engineering Choices

  • Modular design: Separation of concerns via services, controllers, repositories.
  • Reliable messaging: RabbitMQ/Kafka for eventual consistency and decoupled processing.
  • Performance: Redis for caching leaderboards, sessions, and hot lookups.
  • Observability: Structured logging, error handling, and monitoring hooks.
  • Testing: Unit and integration tests for critical paths using Jest and Supertest with Testcontainers.
  • Separation of concerns: Microservices and worker processes where workloads need isolation (e.g., code execution).

πŸ“ˆ What I focus on in projects

  • Clean, testable code with clear boundaries.
  • Properly handled async flows and retries for message processing.
  • Secure auth and safe handling of sensitive operations.
  • Developer experience: good READMEs, .env.example, scripts, and minimal setup friction.

🀝 Want to collaborate or hire me?


Pinned Loading

  1. DeshCode DeshCode Public

    A LeetCode-style online judge built with Node.js, TypeScript, and Docker. Supports secure code execution, real-time contests & leaderboards (Debezium + Redis), distributed job processing (RabbitMQ)…

    TypeScript 2

  2. Personal-Blogging-Platform-API Personal-Blogging-Platform-API Public

    A blog management API built with Express.js and MySQL. It supports user authentication (signup, login, logout) with JWT tokens. Users can create, update, and delete their own posts. Role-based acce…

    JavaScript

  3. authentication authentication Public

    Authentication system built with Node.js, Express, and Passport.js. Features user registration, login, JWT-based session management, bcrypt for password hashing, and Passport.js for handling authen…

    JavaScript

  4. MedHub MedHub Public

    MedHub is a microservices-based medical management system built with Node.js and TypeScript. It includes a robust admin service for managing doctors and appointments, plus integrated email communic…

    TypeScript