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
304
305
306
307
308
|
<!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">Plattform-Ingenieur · 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 (Backend/API-fokussiert),
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">Kodierung</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">Arbeiten als Teil des <b>Engineering Enablement</b>-Teams, das Infrastruktur bereitstellt,
interne Tools, Dokumente, CloudFoundry-Plattform und Kubernetes-Cluster,
um die Entwicklungsteams bei ihren täglichen Aufgaben zu unterstützen.</p>
<ul class="tasks">
<li>Arbeitete an interner <a href="https://github.com/springernature/halfpipe">(Halfpipe)</a>
Tools zum Erstellen von CI/CD-Pipelines auf Github-Aktionen und Concourse.</li>
<li>Implementierte wiederverwendbare GitHub Actions-Workflows für die Bereitstellung in CloudFoundry, Kubernetes und
Docker-Registrierungen.</li>
<li>Implementierte Tools zum Anzeigen und Melden des Kubernetes-Bereitstellungsstatus (von CI/CD) an die jeweiligen Teams,
und benachrichtigen Sie sie bei Fehlern.
</li>
<li> Implementierter Alert-Routing-Service zur Integration mit Prometheus
<a href="https://prometheus.io/docs/alerting/latest/alertmanager/">Alert-Manager</a>.
Und sendet Benachrichtigungen an verschiedene Teams/Projekte und vorkonfigurierte Slack-Kanäle oder E-Mails.</li>
<li>Gepflegte Teamdokumente, die von anderen Entwicklungsteams verwendet werden, um sie in interne Plattformen zu integrieren und zu verwenden.</li>
<li>Wartung 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>
Implementierte Infrastruktur als 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 zur Bereitstellung von Infrastruktur auf verschiedenen Cloud-Anbietern und in Entwicklungsstadien.</li>
<li>
Aufbau standardisierter Workflows mit CircleCI zur Automatisierung von Bereitstellungen (für interne und externe Projekte).
</li>
<li>
Implementierung und Wartung der (Rails 5) JSON-API für unsere
<a href="#note1"> Infografik-Portal[1]</a>.
</li>
<li>
Gepflegt 99+% Dokumentationsabdeckung des <a href="#note1"> Infografik-Portals[1]</a>. API
und 90+% Testabdeckung.
</li>
<li>Arbeitete mit Docker zusammen, um Ergebnisse für einige unserer externen Projekte bereitzustellen.</li>
<li>
Unterstützung und Anleitung zur Arbeit mit unseren standardmäßigen Bereitstellungsworkflows (intern und extern).
</li>
<li>Arbeitete eng mit unserem Systemingenieur zusammen, um ihn bei verschiedenen DevOps-Aufgaben zu unterstützen.</li>
<li>
Einige der Datenpipelines wurden neu geschrieben, gewartet und bereitgestellt, um bessere Sicherheitsstandards einzuhalten.
</li>
</ul>
<p class="note">
<a id="note1" href="#note1">[1]</a> Eine funktionierende Version des Infografik-Portals wurde erworben von
<a href="https://scrollytelling.net/">Scrolly Telling GmbH</a> und noch von ihnen bearbeitet wie gesehen bei
<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>Wartung der RESTful-API (von Administratoren und Front-End verwendet).</li>
<li>Umsetzung und Pflege der Integration mit der Deutschen Bank.</li>
<li>
Implementierung und Wartung der Integration mit Intercom
<abbr title="Kundenbeziehungsmanagement">CRM.</abbr>
</li>
<li>Implementierung und Wartung des Rechnungssystems.</li>
<li>
Implementiert die neue Authentifizierungsschicht mit
<a href="https://tools.ietf.org/html/rfc7519">(RFC7519: JWT)</a>.
</li>
<li>Die Zwei-Faktor-Authentifizierung (<abbr>2FA</abbr>) für die Benutzer-/Client-Anmeldung implementiert.</li>
<li>Integrierte andere Dienste wie DocuSign, PostIdent,...</li>
<li>Umgesetzte tägliche Geschäfts-/Marketing-/technische 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>Wartung der Rails-Web-App (Dashboard).</li>
<li>Der Scraping-Prozess zum Abrufen der Daten aus Apple- und GooglePlay-Stores wurde optimiert.</li>
<li>Warteschlangen und Überwachung rund um die Scraper neu implementiert.</li>
<li>Migrierte erfasste Daten aus verschiedenen Ressourcen zu Google BigQuery.</li>
<li>
Wartung und Bereitstellung von <abbr title="Virtual Machines">VM</abbr>-Instanzen für verschiedene Zwecke bei Google
Cloud-Plattform (mit chef).
</li>
<li>
“Extract” Schritt in die
<abbr title="Extract, Transform, Load">ETL</abbr>-Prozess (unter Verwendung eines API-basierten Crawlers anstelle von 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>Implementierte die Testsuite für die API.</li>
<li>Veranstaltungsbuchungsfunktion über Stripe implementiert.</li>
<li>Neu implementiertes Caching für bessere Antwortzeiten.</li>
<li>Wartung der Heroku-Stacks für Staging/Produktion.</li>
<li>
Große Teile der API neu implementiert, um besseren Designmustern zu folgen
(Sechseckige Architektur und <abbr title="Publish-Subscribe">Pub/Sub</abbr>-Muster).
</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 Lösungen</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 Lösungen</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>
|