From 807c6187897d86867877128d1a085719d8cc3622 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Mon, 6 Jun 2022 23:17:20 +0200 Subject: Squashed commit of the following: commit 026e3956264da51ce35234f0dfba0f14205321c9 Author: a14m Date: Mon Jun 6 20:03:31 2022 +0200 Better styling to work on iOS and links commit fa4c6cb335874f3a3da2f071d0973c4d9f413516 Author: a14m Date: Mon Jun 6 16:19:52 2022 +0200 Update meta information for SEO and introduction paragraph commit 81b73232661e45167a25f3909edd8062b8e37e59 Author: a14m Date: Sun Jun 5 19:19:04 2022 +0200 Add styling spaces (margins) for better looking print Also allows flexibility of controlling the spaces later commit 1382bf636b23e99d7a1815903c81f16ea622f0c3 Author: a14m Date: Sun Jun 5 19:14:15 2022 +0200 Add the SN job description and tasks commit 0089eca138c6037a0ceedff86ac991a9688f9ab9 Author: a14m Date: Sun Jun 5 17:59:42 2022 +0200 Add styling for work__experience separator commit d3cba473d7c33dddd1fbf42e898123dc0f1069c0 Author: a14m Date: Sun Jun 5 16:41:41 2022 +0200 Update the header sections to reflect the current skills/job title --- app/assets/index.html | 70 +++++++++++++++++++++++++----------- app/print.styl | 4 +++ app/stylesheets/print/education.styl | 1 + app/stylesheets/print/projects.styl | 6 +++- app/stylesheets/print/skills.styl | 4 +++ app/stylesheets/print/work.styl | 12 +++++++ app/stylesheets/web/work.styl | 14 ++++++++ app/web.styl | 7 ++-- 8 files changed, 93 insertions(+), 25 deletions(-) diff --git a/app/assets/index.html b/app/assets/index.html index 4a9ac2b..466ade0 100644 --- a/app/assets/index.html +++ b/app/assets/index.html @@ -15,8 +15,8 @@ - - + + @@ -25,7 +25,7 @@

Ahmed AbdelHalim

- Senior Software Developer · DevOps + Platform Engineer · DevOps
Berlin, Germany
@@ -43,41 +43,41 @@

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). + Platform engineer at Springer Nature Group 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).

Skills

DevOps
-
Ansible, Terraform, Docker, Vagrant, Makefile, certbot.
- -
Back-end
-
Ruby on Rails, PostgreSQL, Redis, MongoDB, MySQL, Django.
+
Kubernetes, Terraform, Docker, Ansible, CloudFoundry, Helm, Fastly, Vault, + Concourse, Artifactory, ... +
-
Front-end
-
ReactJS, HTML5, Next.js, StimulusJS, TypeScript.
+
Telemetry
+
Grafana, Prometheus, Loki, ELK, + Sentry, Tempo. +
Programming
-
Ruby, Python, Bash, TypeScript, Rust.
+
Go, Ruby, Python, Bash, Rust.
Paradigms
Design Patterns, Test Driven Development (TDD), Behavior Driven Development (BDD), - Continuous Integration and Delivery (CI/CD), RESTful APIs. + Continuous Integration and Delivery (CI/CD), Infrastructure as Code (IaC), + Configuration as Code, RESTful APIs, Micro-Services.
Tools
- Vim, Git, tmux, ssh, Asana, Atlassian, CircleCI, TravisCI, Terminal, bash, Notion, Sidekiq, ... -
- -
Security
-
+ 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, ...
@@ -94,6 +94,34 @@

Work Experience

+
+
+

+ Springer Nature AG & Co. KGaA +

+ Platform Engineer + Feb. 2022 - Present + Berlin, Germany +
+

Part of the Engineering Enablement team, that enables product teams to focus on + delivering value to the business.
+ We Provide:
+

+
    +
  • Platform as a Service (PaaS) with centralised services like + logging, metrics, CI/CD and caching. +
  • +
  • CloudFoundry platform capable of handling an average of 13.000 requests/min.
  • +
  • CloudFoundary and Kubernetes clusters with around 2.800 apps (Micro-Services).
  • +
  • Concourse pipelines that handle an average of 4.000 deployments/week.
  • +
  • Internal tooling around building pipelines for CI/CD on Concourse and GitHub actions.
  • +
  • Prometheus as a Service, and pre-configured customizable Grafana dashboards for developers to use.
  • +
  • Logging via ELK/Loki and logging metrics.
  • +
  • Implementing solutions for cloud services, focusing on high availability, security, + disaster recovery, scaling and performance. +
  • +
+

Sapera GmbH.

diff --git a/app/print.styl b/app/print.styl index 7f5cff3..41ca616 100644 --- a/app/print.styl +++ b/app/print.styl @@ -8,6 +8,10 @@ body { line-height: 1.3 } +a:link, a:visited, a:hover, a:active { + text-decoration-thickness: 1px +} + .section-header { font-size: 18pt margin-bottom: -0.6em diff --git a/app/stylesheets/print/education.styl b/app/stylesheets/print/education.styl index c3d6fd8..ebefd27 100644 --- a/app/stylesheets/print/education.styl +++ b/app/stylesheets/print/education.styl @@ -1,6 +1,7 @@ .education { // avoid page breaks inside the education section page-break-inside: avoid + margin-top: 75px // remove the extra space added for the website margin-bottom: 0 } diff --git a/app/stylesheets/print/projects.styl b/app/stylesheets/print/projects.styl index 8ab284c..be9dd75 100644 --- a/app/stylesheets/print/projects.styl +++ b/app/stylesheets/print/projects.styl @@ -1,3 +1,7 @@ -.project { +.projects { + margin-top: 75px page-break-inside: avoid } + +.project { +} diff --git a/app/stylesheets/print/skills.styl b/app/stylesheets/print/skills.styl index 57c51fa..e5bba67 100644 --- a/app/stylesheets/print/skills.styl +++ b/app/stylesheets/print/skills.styl @@ -1,3 +1,7 @@ +.skills { + margin-top: 75px +} + .skills__content { margin-top: 1.5em } diff --git a/app/stylesheets/print/work.styl b/app/stylesheets/print/work.styl index 4e8a9be..2b57f74 100644 --- a/app/stylesheets/print/work.styl +++ b/app/stylesheets/print/work.styl @@ -1,3 +1,15 @@ +.work { + margin-top: 75px + margin-bottom: 180px +} + .work__experience { page-break-inside: avoid } + +// Style the Company name links in the PDF with thicker underline +.job-position__company { + a:link, a:visited, a:hover, a:active { + text-decoration-thickness: 2px + } +} diff --git a/app/stylesheets/web/work.styl b/app/stylesheets/web/work.styl index caa127d..a989349 100644 --- a/app/stylesheets/web/work.styl +++ b/app/stylesheets/web/work.styl @@ -7,6 +7,20 @@ .work__experience { } +.work__experience { + &:after { + display: flex + content: "" + border-bottom: 1px solid + margin: auto + max-width: 30% + } + &:last-of-type:after { + // remove the extra horizontal line after the last work__experience + display: none + } +} + .job-position { display: flex flex-flow: row wrap diff --git a/app/web.styl b/app/web.styl index 34a7f53..2e05848 100644 --- a/app/web.styl +++ b/app/web.styl @@ -15,7 +15,7 @@ secondaryColor = #DB0A16 } body { - font-family: "PT Sans", Arial, sans-serif + font-family: "PT Sans", "Kohinoor Bangla", sans-serif max-width: 1024px min-width: 375px margin: 0 auto @@ -30,9 +30,10 @@ main { a:link, a:visited, a:hover, a:active { - text-decoration: none + text-decoration-color: secondaryColor + text-decoration-thickness: 2px + text-underline-offset: 2px color: inherit - border-bottom: 1px solid secondaryColor } .section-header { -- cgit v1.2.3