Ahmed AbdelHalim

Senior Software Developer · DevOps
Berlin, Germany

Summary

Senior backend and infrastructure developer with 9+ years experience in development (backend/API focused), 4+ years in infrastructure automation and DevOps, 1+ years Security analysis and Red Team exploit testing. An avid fan of automation, sustainability, design patterns, and clean code. Always interested in deriving a better problem-solving method for challenging tasks, and learning sensible new technologies and tools (if the need arises).

Skills

DevOps
Ansible, Terraform, Docker, Vagrant, Makefile, certbot.
Back-end
Ruby on Rails, PostgreSQL, Redis, MongoDB, MySQL, Django.
Front-end
ReactJS, HTML5, Next.js, StimulusJS, TypeScript.
Programming
Ruby, Python, Bash, TypeScript, Rust.
Paradigms
Design Patterns, Test Driven Development (TDD), Behavior Driven Development (BDD), Continuous Integration and Delivery (CI/CD), RESTful APIs.
Tools
Vim, Git, tmux, ssh, Asana, Atlassian, CircleCI, TravisCI, Terminal, bash, Notion, Sidekiq, ...
Security
nc, nmap, curl, ffuf, gobuster, sqlmap, xxd, searchsploit, meta-sploit, commix, gdb, ltrace, ...
Platforms
Amazon Web Services (AWS), DigitalOcean, Heroku, Google Cloud Platform (GCP), Linux.
Languages
English (Professional), German (Basic), Arabic (Native).

Work Experience

Sapera GmbH.

Senior Developer/DevOps Apr. 2018 - Nov. 2021 Berlin, Germany
  • Implemented infrastructure as code (IaC) for different projects using Terraform and Ansible.
  • Standardized the deployment process (and maintained the process documentation).
  • Built templates to provision infrastructure on different cloud providers and development stages.
  • Built standardized workflows using CircleCI to automate deployments (for internal and external projects).
  • Implemented and maintained the (Rails 5) JSON API serving our infographics portal.
  • Maintained 99+% documentation coverage of the infographics portal API and 90+% test coverage.
  • Worked with Docker to provide deliverables for some of our external projects.
  • Provided support and tutoring to work with our standard deployment workflows (internally and externally).
  • Worked closely with our Systems Engineer to support with various DevOps tasks.
  • Rewrote, maintained and provisioned some of the data pipelines to adhere to a better security standards.

LIQID GmbH.

Senior Backend Developer Mar. 2016 - Dec. 2017 Berlin, Germany
  • Maintained the RESTful API (used by admins and front-end).
  • Implemented and maintained the integration with Deutsche Bank.
  • Implemented and maintained the integration with Intercom CRM.
  • Implemented and maintained the Invoicing system.
  • Implemented the new authentication layer using (RFC7519: JWT).
  • Implemented the Two-Factor Authentication (2FA) for user/client login.
  • Integrated other services like DocuSign, PostIdent,...
  • Implemented day to day business/marketing/technical requirements.

PrioriData GmbH.

Full Stack Developer Jul. 2015 - Feb. 2016 Berlin, Germany

Was acquired by Airnow Data Ltd.

  • Maintained the Rails web (dashboard) app.
  • Optimized the scraping process of getting the data from Apple and GooglePlay stores.
  • Reimplemented the queueing and monitoring around the scrapers.
  • Migrated acquired data from different resources to Google BigQuery.
  • Maintained and provisioned different purpose VM instances on Google Cloud Platform (using chef).
  • Reimplemented the “Extract” step in the ETL process (using an API based crawler instead of phantomJS browser).

AskNative

Backend Developer/DevOps May. 2013 - Jul. 2015 Remote, Egypt
  • Reimplemented large portions of the API to follow better design patterns
    (Hexagonal Architecture, and Pub/Sub pattern).
  • Implemented the test suite for the API.
  • Implemented events booking feature via Stripe.
  • Reimplemented caching for better response times.
  • Maintained the Heroku stacks for staging/production.

Writing

Clean Code and the Art of Exception Handling

A Toptal published blog post on different tactics and strategies for exception handling and how to employ them to write cleaner code.

Projects

Conway's Game of Life

A mono-repo with different command line interface (CLI) implementations for the Game of Life in multiple languages (currently Ruby/Rust), with the automation for publishing updates to different package managers using a git-ish workflow.

Education

B.E. in Computer Science and Engineering

Arab Academy for Science and Technology

GPA 3.1/4.0 (B - Very Good)

Alexandria, Egypt Sep. 2005 - Jan. 2011