summaryrefslogtreecommitdiffstats
path: root/app/assets/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'app/assets/index.html')
-rw-r--r--app/assets/index.html310
1 files changed, 0 insertions, 310 deletions
diff --git a/app/assets/index.html b/app/assets/index.html
deleted file mode 100644
index f40a7bc..0000000
--- a/app/assets/index.html
+++ /dev/null
@@ -1,310 +0,0 @@
-<!DOCTYPE html>
-<html lang="en">
- <head>
- <meta charset="utf-8" />
- <title>A14M</title>
- <link href="/web.css" rel="stylesheet" media="all" />
- <link href="/print.css" rel="stylesheet" media="print" />
- <link rel="shortcut icon" href="/favicon.ico" />
- <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
- <link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png" />
- <link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png" />
- <link rel="manifest" href="/site.webmanifest" />
- <link rel="mask-icon" href="/safari-pinned-tab.svg" color="#000" />
- <meta name="msapplication-TileColor" content="#da532c" />
- <meta name="theme-color" content="#ffffff" />
-
- <meta name="author" content="Ahmed AbdelHalim" />
- <meta name="description" content="A14M ยท Platform Engineer/DevOps" />
- <meta name="keywords" content="DevOps, go, docker, ansible, python, bash, CI, CD, TDD, BDD, AWS, terraform, GCP, k8s, kubernetes, grafana, prometheus, loki, ELK" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="color-scheme" content="dark light" />
- </head>
-
- <body>
- <main>
- <header class="header">
- <a class="header__language" lang="de" href="/de.html">[DE]</a>
- <h1 class="header__name">Ahmed AbdelHalim</h1>
- <em class="header__job-title">Platform Engineer &centerdot; DevOps</em>
- <address class="header__contact-info">
- <div class="header__location">Berlin, Germany</div>
- <div class="header__tel"><a href="tel:+491770126386">+49 177 912 6386</a></div>
- <div class="header__email"><a href="mailto:[email protected]">[email protected]</a></div>
- <div class="header__website"><a href="https://a14m.me">website</a></div>
- <div class="header__srht"><a href="https://git.sr.ht/~a14m">sr.ht</a></div>
- <div class="header__github"><a href="https://github.com/a14m">Github</a></div>
- <div class="header__stackoverflow">
- <a href="https://stackoverflow.com/users/1769515/a14m">StackOverflow</a>
- </div>
- <div class="header__linkedin"><a href="https://www.linkedin.com/in/a14m">LinkedIn</a></div>
- <div class="header__pgp"><a href="/key.asc">PGP</a></div>
- </address>
- </header>
-
- <article class="summary">
- <h2 class="summary__header section-header">Summary</h2>
- <p class="summary__content">
- Platform engineer with
- 10+ years of experience in software development (backend/API focused),
- 5+ years in infrastructure automation and DevOps,
- hobbyist security analyst and tester.
- 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 (when the need arises).
- </p>
- </article>
- <article class="skills">
- <h2 class="skills__header section-header">Skills</h2>
- <dl class="skills__content">
- <dt class="skills__title">DevOps</dt>
- <dd class="skills__items">Kubernetes, Terraform, Docker, Ansible, CloudFoundry, Helm, Fastly, Vault,
- Concourse, Artifactory, ...
- </dd>
-
- <dt class="skills__title">Telemetry</dt>
- <dd class="skills__items">Grafana, Prometheus, Loki, <abbr title="Elasticsearch Logstash Kibana">ELK</abbr>,
- Sentry, Tempo.
- </dd>
-
- <dt class="skills__title">Coding</dt>
- <dd class="skills__items">Go, Ruby, Python, Bash, Rust.</dd>
-
- <dt class="skills__title">Paradigms</dt>
- <dd class="skills__items">
- Design Patterns, Test Driven Development (<abbr>TDD</abbr>), Behavior Driven Development (<abbr>BDD</abbr>),
- Continuous Integration and Delivery (<abbr>CI/CD</abbr>), Infrastructure as Code (<abbr>IaC</abbr>),
- Configuration as Code, RESTful APIs, Micro-Services.
- </dd>
-
- <dt class="skills__title">Tools</dt>
- <dd class="skills__items">
- vim, git, tmux, ssh, bash, kubectl, kubevela, ansible, helmfile, vagrant, docker, certbot, dig, bosh, vault,
- nc, nmap, curl, ffuf, gobuster, sqlmap, xxd, searchsploit, meta-sploit, commix, gdb, ltrace, ...
- </dd>
-
- <dt class="skills__title">Platforms</dt>
- <dd class="skills__items">
- Amazon Web Services (<abbr>AWS</abbr>), DigitalOcean, Heroku, Google Cloud Platform (<abbr>GCP</abbr>),
- Linux.
- </dd>
-
- <dt class="skills__title">Languages</dt>
- <dd class="skills__items">English (Professional), German (Basic), Arabic (Native).</dd>
- </dl>
- </article>
-
- <article class="work">
- <h2 class="work__header section-header">Work Experience</h2>
- <article class="work__experience">
- <div class="job-position">
- <h2 class="job-position__company">
- <a href="https://group.springernature.com/gp/group">Springer Nature AG & Co. KGaA</a>
- </h2>
- <em class="job-position__title">Platform Engineer</em>
- <em class="job-position__duration">Feb. 2022 - Aug. 2022</em>
- <em class="job-position__location">Berlin, Germany</em>
- </div>
- <p class="note">Working as part of the <b>Engineering Enablement</b> team, that provides infrastructure,
- internal tooling, docs, CloudFoundry platform, and Kubernetes clusters,
- to help the development teams with their daily tasks.</p>
- <ul class="tasks">
- <li>Worked on internal <a href="https://github.com/springernature/halfpipe">(halfpipe)</a>
- tooling for building CI/CD pipelines on Github actions and Concourse.</li>
- <li>Implemented reusable GitHub Actions workflows for deploying to CloudFoundry, Kubernetes, and
- Docker Registries.</li>
- <li>Implemented tooling to show and report Kubernetes deployment status (from CI/CD) to respective teams,
- and notify them on failure.
- </li>
- <li> Implemented alert-routing service, to integrate with Prometheus
- <a href="https://prometheus.io/docs/alerting/latest/alertmanager/">alert-manager</a>.
- And sends alerts to different teams/projects, and preconfigured Slack channels or emails.</li>
- <li>Maintained team docs used by other development teams, to integrate with and use internal platforms.</li>
- <li>Maintained terraform-provisioned infrastructure of different parts of the platforms.</li>
- </ul>
- </article>
- <article class="work__experience">
- <div class="job-position">
- <h2 class="job-position__company"><a href="https://sapera.com/">Sapera GmbH.</a></h2>
- <em class="job-position__title">Senior Developer/DevOps</em>
- <em class="job-position__duration">Apr. 2018 - Nov. 2021</em>
- <em class="job-position__location">Berlin, Germany</em>
- </div>
- <ul class="tasks">
- <li>
- Implemented infrastructure as code (<abbr>IaC</abbr>) for different projects using Terraform and Ansible.
- </li>
- <li>Standardized the deployment process (and maintained the process documentation).</li>
- <li>Built templates to provision infrastructure on different cloud providers and development stages.</li>
- <li>
- Built standardized workflows using CircleCI to automate deployments (for internal and external projects).
- </li>
- <li>
- Implemented and maintained the (Rails 5) JSON API serving our
- <a href="#note1"> infographics portal[1]</a>.
- </li>
- <li>
- Maintained 99+&percnt; documentation coverage of the <a href="#note1"> infographics portal[1]</a>. API
- and 90+&percnt; test coverage.
- </li>
- <li>Worked with Docker to provide deliverables for some of our external projects.</li>
- <li>
- Provided support and tutoring to work with our standard deployment workflows (internally and externally).
- </li>
- <li>Worked closely with our Systems Engineer to support with various DevOps tasks.</li>
- <li>
- Rewrote, maintained and provisioned some of the data pipelines to adhere to a better security standards.
- </li>
- </ul>
- <p class="note">
- <a id="note1" href="#note1">[1]</a> A working version of the infographics portal was acquired by
- <a href="https://scrollytelling.net/"> Scrolly Telling GmbH</a> and still worked on by them as seen at
- <a href="https://five-times.com/"> Five-Times</a>.
- </p>
- </article>
- <article class="work__experience">
- <div class="job-position">
- <h2 class="job-position__company"><a href="https://liqid.de/">LIQID GmbH.</a></h2>
- <em class="job-position__title">Senior Backend Developer</em>
- <em class="job-position__duration">Mar. 2016 - Dec. 2017</em>
- <em class="job-position__location">Berlin, Germany</em>
- </div>
- <ul class="tasks">
- <li>Maintained the RESTful API (used by admins and front-end).</li>
- <li>Implemented and maintained the integration with Deutsche Bank.</li>
- <li>
- Implemented and maintained the integration with Intercom
- <abbr title="Customer Relationship Management">CRM.</abbr>
- </li>
- <li>Implemented and maintained the Invoicing system.</li>
- <li>
- Implemented the new authentication layer using
- <a href="https://tools.ietf.org/html/rfc7519">(RFC7519: JWT)</a>.
- </li>
- <li>Implemented the Two-Factor Authentication (<abbr>2FA</abbr>) for user/client login.</li>
- <li>Integrated other services like DocuSign, PostIdent,...</li>
- <li>Implemented day to day business/marketing/technical requirements.</li>
- </ul>
- </article>
- <article class="work__experience">
- <div class="job-position">
- <h2 class="job-position__company">PrioriData GmbH.</h2>
- <em class="job-position__title">Full Stack Developer</em>
- <em class="job-position__duration">Jul. 2015 - Feb. 2016</em>
- <em class="job-position__location">Berlin, Germany</em>
- </div>
- <p class="note">Was acquired by <a href="https://airnow.com/">Airnow Data Ltd.</a></p>
- <ul class="tasks">
- <li>Maintained the Rails web (dashboard) app.</li>
- <li>Optimized the scraping process of getting the data from Apple and GooglePlay stores.</li>
- <li>Reimplemented the queueing and monitoring around the scrapers.</li>
- <li>Migrated acquired data from different resources to Google BigQuery.</li>
- <li>
- Maintained and provisioned different purpose <abbr title="Virtual Machines">VM</abbr> instances on Google
- Cloud Platform (using chef).
- </li>
- <li>
- Reimplemented the &#8220;Extract&#8221; step in the
- <abbr title="Extract, Transform, Load">ETL</abbr> process (using an API based crawler instead of phantomJS
- browser).
- </li>
- </ul>
- </article>
- <article class="work__experience">
- <div class="job-position">
- <h2 class="job-position__company">AskNative</h2>
- <em class="job-position__title">Backend Developer/DevOps</em>
- <em class="job-position__duration">May. 2013 - Jul. 2015</em>
- <em class="job-position__location">Remote, Egypt</em>
- </div>
- <ul class="tasks">
- <li>Implemented the test suite for the API.</li>
- <li>Implemented events booking feature via Stripe.</li>
- <li>Reimplemented caching for better response times.</li>
- <li>Maintained the Heroku stacks for staging/production.</li>
- <li>
- Reimplemented large portions of the API to follow better design patterns
- (Hexagonal Architecture, and <abbr title="Publish-Subscribe">Pub/Sub</abbr> pattern).
- </li>
- </ul>
- </article>
- </article>
-
- <article class="projects">
- <h2 class="projects_header section-header">Writing</h2>
- <article class="project">
- <h2 class="project__title">The Publish/Subscribe Pattern on Rails</h2>
- <p class="project__content">
- A
- <a href="https://www.toptal.com/ruby-on-rails/the-publish-subscribe-pattern-on-rails">
- Toptal published blog post
- </a>
- on implementing the <abbr title="Publish-Subscribe">Pub/Sub</abbr> pattern in practice in Rails apps.
- </p>
- </article>
- <article class="project">
- <h2 class="project__title">Clean Code and the Art of Exception Handling</h2>
- <p class="project__content">
- A
- <a href="https://www.toptal.com/abap/clean-code-and-the-art-of-exception-handling">
- Toptal published blog post
- </a>
- on different tactics and strategies for exception handling and how to employ them to write cleaner code.
- </p>
- </article>
- <article class="project">
- <h2 class="project__title">
- <a href="https://git.sr.ht/~a14m/OTW"> Over The Wire Solutions </a>
- </h2>
- <p class="project__content">
- Solutions for some of the <a href="https://overthewire.org/wargames/">OTW wargames</a>
- documented in a README files format.
- </p>
- </article>
- <article class="project">
- <h2 class="project__title">
- <a href="https://git.sr.ht/~a14m/HTB"> Hack The Box Solutions </a>
- </h2>
- <p class="project__content">
- Learning security analysis via documenting the solutions for some of the
- <a href="https://hackthebox.eu">HTB machines</a>
- in a README files format.
- </p>
- </article>
- </article>
-
- <article class="projects">
- <h2 class="projects__header section-header">Projects</h2>
- <article class="project">
- <h2 class="project__title">
- <a href="https://git.sr.ht/~a14m/game-of-life"> Conway's Game of Life </a>
- </h2>
- <p class="project__content">
- A mono-repo with different command line interface (<abbr>CLI</abbr>) implementations for the
- <a href="https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life">Game of Life</a> in multiple languages
- (currently Ruby/Rust), with the automation for publishing updates to different package managers using a
- git-ish workflow.
- </p>
- </article>
- <article class="project">
- <h2 class="project__title">
- <a href="https://git.sr.ht/~a14m/a14m.srht.site"> a14m.srht.site </a>
- </h2>
- <p class="project__content">The source code, and deployment scripts for this website/CV.</p>
- </article>
- </article>
-
- <article class="education">
- <h2 class="education__header section-header">Education</h2>
- <article class="education__details">
- <h2 class="education__degree">B.E. in Computer Science and Engineering</h2>
- <p class="education__university">Arab Academy for Science and Technology</p>
- <p class="education__gpa">GPA 3.1/4.0 (B - Very Good)</p>
- <em class="education__location">Alexandria, Egypt</em>
- <em class="education__duration">Sep. 2005 - Jan. 2011</em>
- </article>
- </article>
- </main>
- <footer></footer>
- </body>
-</html>