1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
|
<!DOCTYPE html>
<html lang="de">
<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">
<h1 class="header__name">Ahmed AbdelHalim</h1>
<em class="header__job-title">Platform Engineer · 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>
</address>
</header>
<article class="summary">
<h2 class="summary__header section-header">Summary</h2>
<p class="summary__content">
Plattform-Ingenieur mit
10+ Jahre Erfahrung in der Software-Entwicklung (Schwerpunkt Backend/API),
5+ Jahre Erfahrung in Infrastruktur-Automatisierung und DevOps,
Hobby-Sicherheitsanalytiker und -tester.
Ein begeisterter Fan von Automatisierung, Nachhaltigkeit, Design Patterns und sauberem Code.
Immer daran interessiert, eine bessere Problemlösungsmethode für anspruchsvolle Aufgaben zu finden,
und sinnvolle neue Technologien und Tools zu erlernen (wenn die Notwendigkeit besteht).
</p>
</article>
<article class="skills">
<h2 class="skills__header section-header">Kenntnisse</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">Telemetrie</dt>
<dd class="skills__items">Grafana, Prometheus, Loki, <abbr title="Elasticsearch Logstash Kibana">ELK</abbr>,
Sentry, Tempo.
</dd>
<dt class="skills__title">Programmierung</dt>
<dd class="skills__items">Go, Ruby, Python, Bash, Rust.</dd>
<dt class="skills__title">Paradigmen</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">Plattformen</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">Sprachen</dt>
<dd class="skills__items">Englisch (C2), Deutsch (B1), Arabisch (Muttersprache).</dd>
</dl>
</article>
<article class="work">
<h2 class="work__header section-header">Berufserfahrungen</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">Sie arbeiten als Teil des <b>Engineering Enablement</b> Teams, das die Infrastruktur bereitstellt,
interne Tools, Dokumente, CloudFoundry-Plattform und Kubernetes-Cluster bereitstellt,
um die Entwicklungsteams bei ihren täglichen Aufgaben zu unterstützen.</p>
<ul class="tasks">
<li>Arbeit an internen <a href="https://github.com/springernature/halfpipe">(halfpipe)</a>
Tooling für den Aufbau von CI/CD-Pipelines auf Github-Aktionen und Concourse.</li>
<li>Implementierung von wiederverwendbaren GitHub Actions-Workflows für die Bereitstellung in CloudFoundry, Kubernetes und
Docker-Registrierungen.</li>
<li>Implementierung von Werkzeugen zur Anzeige und Meldung des Kubernetes-Bereitstellungsstatus (von CI/CD) an die jeweiligen Teams,
und sie bei Fehlern zu benachrichtigen.
</li>
<li> Implementierung eines Alert-Routing-Dienstes zur Integration mit Prometheus
<a href="https://prometheus.io/docs/alerting/latest/alertmanager/">alert-manager</a>.
Und sendet Warnmeldungen an verschiedene Teams/Projekte und vorkonfigurierte Slack-Kanäle oder E-Mails.</li>
<li>Pflege von Teamdokumenten, die von anderen Entwicklungsteams verwendet werden, um sich in interne Plattformen zu integrieren und diese zu nutzen.</li>
<li>Instandhaltung der von Terraform bereitgestellten Infrastruktur verschiedener Teile der Plattformen.</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>
Implementierung von Infrastructure as Code (<abbr>IaC</abbr>) für verschiedene Projekte mit Terraform und Ansible.
</li>
<li>Standardisierung des Bereitstellungsprozesses (und Pflege der Prozessdokumentation).</li>
<li>Erstellte Vorlagen für die Bereitstellung der Infrastruktur bei verschiedenen Cloud-Anbietern und Entwicklungsstufen.</li>
<li>
Aufbau standardisierter Workflows mit CircleCI zur Automatisierung von Implementierungen (für interne und externe Projekte).
</li>
<li>
Implementierung und Wartung der (Rails 5) JSON-API für unsere
<a href="#note1"> infographics portal[1]</a>.
</li>
<li>
99+% Dokumentationsabdeckung der <a href="#note1">infographics portal[1]</a> API
und 90+% Testabdeckung.
</li>
<li>Mit Docker gearbeitet, um Ergebnisse für einige unserer externen Projekte zu liefern.</li>
<li>
Unterstützung und Anleitung bei der Arbeit mit unseren Standardbereitstellungsabläufen (intern und extern).
</li>
<li>Eine enge Zusammenarbeit mit dem Systemingenieur zur Unterstützung bei verschiedenen DevOps-Aufgaben.</li>
<li>
Einige der Datenpipelines wurden umgeschrieben, gewartet und bereitgestellt, um bessere Sicherheitsstandards einzuhalten.
</li>
</ul>
</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>Pflege der RESTful-API (von Admins und Front-End verwendet).</li>
<li>Implementierung und Pflege der Integration mit der Deutschen Bank.</li>
<li>
Implementierung und Pflege der Integration mit Intercom
<abbr title="Customer Relationship Management">CRM.</abbr>
</li>
<li>Implementierung und Pflege des Fakturierungssystems</li>.
<li>
Implementierung der neuen Authentifizierungsschicht mit
<a href="https://tools.ietf.org/html/rfc7519">(RFC7519: JWT)</a>.
</li>
<li>Implementierung der Zwei-Faktor-Authentifizierung (<abbr>2FA</abbr>) für die Benutzer-/Client-Anmeldung.</li>
<li>Integrierte andere Dienste wie DocuSign, PostIdent,...</li>
<li>Umsetzung der alltäglichen geschäftlichen, marketingtechnischen und technischen Anforderungen</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">Wurde von <a href="https://airnow.com/">Airnow Data Ltd.</a> übernommen.</p>
<ul class="tasks">
<li>Wartete die Rails-Webanwendung (Dashboard).</li>
<li>Optimierung des Scraping-Prozesses, um die Daten aus den Apple- und GooglePlay-Stores zu erhalten.</li>
<li>Neuimplementierung der Warteschlangen und Überwachung rund um die Scraper.</li>
<li>Erfasste Daten aus verschiedenen Ressourcen zu Google BigQuery migriert.</li>
<li>
</li>
Wartung und Bereitstellung von <abbr title="Virtuelle Maschinen">VM</abbr>-Instanzen für verschiedene Zwecke auf Google
Cloud Platform (mit chef).
<li>
Neuimplementierung des Schritts “Extract” in der
<abbr title="Extract, Transform, Load">ETL</abbr> Prozess (unter Verwendung eines API-basierten Crawlers anstelle eines 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>
Neuimplementierung großer Teile der API zur Einhaltung besserer Entwurfsmuster
(Hexagonal Architecture, and <abbr title="Publish-Subscribe">Pub/Sub</abbr> pattern).
</li>
<li>Implementierung der Testsuite für die API.</li>
<li>Implementierung der Funktion zur Buchung von Veranstaltungen über Stripe.</li>
<li>Reimplementierung von Caching für bessere Antwortzeiten.</li>
<li>Pflege der Heroku-Stacks für Staging/Produktion.</li>
</ul>
</article>
</article>
<article class="projects">
<h2 class="projects_header section-header">Schreiben</h2>
<article class="project">
<h2 class="project__title">The Publish/Subscribe Pattern on Rails</h2>
<p class="project__content">
Ein
<a href="https://www.toptal.com/ruby-on-rails/the-publish-subscribe-pattern-on-rails">
Toptal veröffentlichter Blogbeitrag
</a>
zur Implementierung des <abbr title="Publish-Subscribe">Pub/Sub</abbr>-Musters in der Praxis von Rails-Anwendungen.
</p>
</article>
<article class="project">
<h2 class="project__title">Clean Code and the Art of Exception Handling</h2>
<p class="project__content">
Ein
<a href="https://www.toptal.com/abap/clean-code-and-the-art-of-exception-handling">
Toptal veröffentlichter Blogbeitrag
</a>
über verschiedene Taktiken und Strategien für die Ausnahmebehandlung und wie man sie einsetzt, um saubereren Code zu schreiben.
</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">
Lösungen für einige der <a href="https://overthewire.org/wargames/">OTW-Kriegsspiele</a>
in einem README-Dateiformat dokumentiert.
</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">
Lernsicherheitsanalyse durch Dokumentieren der Lösungen für einige der
<a href="https://hackthebox.eu">HTB-Maschinen</a>
in einem README-Dateiformat.
</p>
</article>
</article>
<article class="projects">
<h2 class="projects__header section-header">Projekte</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">
Ein Mono-Repo mit verschiedenen Implementierungen der Befehlszeilenschnittstelle (<abbr>CLI</abbr>) für die
<a href="https://en.wikipedia.org/wiki/Conway%27s_Game_of_Life">Spiel des Lebens</a> in mehreren Sprachen
(derzeit Ruby/Rust), mit der Automatisierung zum Veröffentlichen von Updates für verschiedene Paketmanager mit a
Gitarrischer 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">Der Quellcode und die Bereitstellungsskripte für diese Website/diesen Lebenslauf.</p>
</article>
</article>
<article class="education">
<h2 class="education__header section-header">Ausbildung</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 - Sehr Gut)</p>
<em class="education__location">Alexandria, Egypt</em>
<em class="education__duration">Sep. 2005 - Jan. 2011</em>
</article>
</article>
</main>
<footer></footer>
</body>
</html>
|