main.tex (17587B)
1 \documentclass{article} 2 \usepackage{bubblecv} 3 4 \begin{document} 5 6 7 \begin{cv}[_MG_4088]{Andreas Gruhler}{Senior Cloud Architect} 8 9 10 %\cvsection[person]{Profile} %----------------------------------------------------------- 11 12 %Open source enthusiast and sportsman. Cloud architect and technical project lead. 13 14 \cvsection[work]{Professional experience} %------------------------------------------------------ 15 16 \begin{cvevent}[Jan 2025][today] 17 \cvname{Senior Cloud Architect} 18 \cvdescription{Health Info Net AG (HIN), Zurich} 19 \begin{itemize} 20 \item Replacement of email service for secure communication between 21 healthcare professionals and third parties with a micro-service 22 based email architecture 23 \item Standardization of proxy/WAF services and associated IAM and 24 antivirus services with Kubernetes Gateway API 25 \item Support of the product teams with architecture decisions for 26 modernization of services 27 \item Oversee development of core platform with external partners 28 \item Central logging/monitoring of infrastructure (log pipelines, 29 metrics, observability, and dashboards) 30 \item IAM and access management for various platforms with OpenID 31 Connect and Keycloak 32 \item Pipeline integrations with external workload identities 33 \item Consult on development \& deployment of cloud-native applications 34 \item Streamlining of testing \& synthetic monitoring activities with 35 modern tool stacks and frameworks 36 \item Internal presentations, documentation, reviews, workshops, forum 37 discussions on IT and cloud topics 38 \item Coordination of internal teams and external partners 39 \item Sales support for cloud topics 40 \item Support for security-related key ceremonies 41 \item Proof of concepts and prototypes, solution engineering, 42 validation of deployment concepts 43 \item Evaluation of special cases and analysis of novel product 44 features 45 \end{itemize} 46 \end{cvevent} 47 48 \begin{cvevent}[Dec 2018][Dec 2024] 49 \cvname{Senior System Engineer} 50 \cvdescription{Adfinis AG, Zurich} 51 \begin{itemize} 52 \item Project manager and tech lead of small teams (3 to 4 people) for 53 multiple projects at the customer site 54 \item Vault subject matter expert (technology owner): Product documentation, best 55 practices, security issues, roadmap \& service development, 56 coordination \& communication with vendor and Adfinis teams 57 \item Operations, incident management, on-call and technical support 58 \item Pre-sales (offers \& estimations) and solution architecture 59 support 60 \item Automation and secrets management projects (e.g., GitLab, Vault): 61 Requirements engineering, architecture \& design, self-service, 62 client integrations in various environments (hybrid cloud, 63 on-prem, AWS, Azure, Google, etc.), platforms (VM, 64 Kubernetes, OpenShift) and industries with DevOps 65 methodology (e.g., GitOps and CI/CD) 66 \item Build and introduce MaxScale and MariaDB database architecture on 67 RHEL at Swiss telco 68 \item Architecture \& design, development and operations of a computing 69 platform for a Swiss school (Nextcloud, Collabora Online, 70 ProxySQL, MariaDB, Galera) 71 \item Maintenance and support for customer SLA systems and services 72 \item Contributions (code, support) to various upstream open source 73 projects 74 \item Public talks at various meetups \& conferences, customer 75 presentations, demos, blog posts 76 \end{itemize} 77 \end{cvevent} 78 79 \cvseparator[5] 80 \begin{cvevent}[Apr 2018][Aug 2018] 81 \cvname{IT Project Management Internship} 82 \cvdescription{Mobilize Financial Services (formerly, "RCI-Finance"), Zurich} 83 \begin{itemize} 84 \item IT project management support 85 \item Preparation and documentation of project meetings and workshops 86 \item Create status reports, test plans and templates 87 \item Support integration testing and roll-out of new business tool 88 \end{itemize} 89 \end{cvevent} 90 91 \cvseparator[5] 92 \begin{cvevent}[May 2017][Jan 2018] 93 \cvname{Software Developer} 94 \cvdescription{qiio (formerly, Smart Home Technology GmbH), Zurich} 95 \begin{itemize} 96 \item Software development with focus on IoT on Microsoft Azure 97 \item JavaScript (Sails.js) and C\# programming with Azure and .NET 98 framework 99 \item Development of an Azure microservice for cost analysis 100 \item Visualizations with Power BI 101 \end{itemize} 102 \end{cvevent} 103 104 \cvseparator[5] 105 \begin{cvevent}[Mar 2016][Jun 2016] 106 \cvname{Internship in Financial Services / Advisory IT Risk and Assurance} 107 \cvdescription{EY, Zurich} 108 \begin{itemize} 109 \item Contribute to project of Fraud Investigation \& Dispute Services (FIDS) 110 \item Evaluation and review of emails and documents according to legal criteria 111 \item Adminstrative tasks and support of counselor and team 112 \end{itemize} 113 \end{cvevent} 114 115 \cvseparator[5] 116 \begin{cvevent}[Jun 2013][Jun 2015] 117 \cvname{IT-Support} 118 \cvdescription{Accelerom AG, Zurich} 119 \begin{itemize} 120 \item Maintenance of server infrastructure (data server, VPN, Samba 121 shares, web server, backup server, data synchronization, 122 marketing software, networks, firewall, windows user 123 accounts and workstations, email, intranet) 124 \item Ensure smooth operations of live analysis and management tool 125 (incidient management) 126 \item Hardware support and installation 127 \item Software engineering for MarketConnex-Software with Java 128 (Groovy/Grails) and JavaScript 129 \end{itemize} 130 \end{cvevent} 131 132 \cvseparator[5] 133 \begin{cvevent}[Jun 2014][Sep 2014] 134 \cvname{Software Engineering Internship} 135 \cvdescription{Fachhochschule Nordwestschweiz (FHNW), Brugg} 136 \begin{itemize} 137 \item Software Engineering Internship under supervision of Prof. Dr. 138 Manfred Vogel at Fachhochschule Nordwestschweiz (FHNW), 139 Institute for Data Science (formerly, "4D-Technologies") 140 \item SCRUM-based software development with Java (Groovy/Grails) 141 and JavaScript for KTI project "CAFAIO: Crossmedial 142 Analytics Framework with Artificial Intelligence and 143 Optimization" 144 \item Extend the existing MarketConnex-Software with a 145 collaboration platform to discuss customer touchpoints 146 \end{itemize} 147 \end{cvevent} 148 149 \cvsection[education]{Education} %------------------------------------------------------ 150 151 \begin{cvevent}[Mar 2026] 152 \cvname{\href{https://cv.in0rdr.ch/2026/instructor-sssa/}{Level 3 153 Instructor Swiss Snowsports Association (SSSA)}} 154 \end{cvevent} 155 156 \begin{cvevent}[Mar 2023] 157 \cvname{\href{https://cv.in0rdr.ch/2023/aspirant-sssa/}{Level 2 Instructor 158 Swiss Snowsports Association (SSSA)}} 159 \end{cvevent} 160 161 \begin{cvevent}[Dec 2021] 162 \cvname{Level 1 Instructor Swiss Snowsports Association (SSSA)} 163 \end{cvevent} 164 165 \cvseparator[5] 166 \begin{cvevent}[2015][2018] 167 \cvname{Master in Information Systems} 168 \cvdescription{University of Zurich (UZH)} 169 \begin{itemize} 170 \item Master thesis: A Reputation and Reward Scheme for a 171 Cooperative, Multi-domain DDoS Defense 172 \item Explore design, implementation and evaluation of a 173 blockchain-based reputation and reward scheme to 174 incentivize participants and penalize malicious peers in a 175 cooperative defense 176 \item Master project: Blockchain in Automotive Industry 177 \item Elicit requirements for a novel digital car dossier, 178 resulting in a prototype with Hyperledger Fabric 179 \end{itemize} 180 \end{cvevent} 181 182 \cvseparator[5] 183 \begin{cvevent}[Aug 2016][Dec 2016] 184 \cvname{Exchange Semester} 185 \cvdescription{Nanyang Technological University (NTU), Singapore} 186 \begin{itemize} 187 \item Algorithms \& Theory of Computing 188 \item Informational Biology 189 \end{itemize} 190 \end{cvevent} 191 192 \cvseparator[5] 193 \begin{cvevent}[2012][2015] 194 \cvname{Bachelor in Information Systems} 195 \cvdescription{University of Zurich (UZH)} 196 \begin{itemize} 197 \item Bachelor thesis: Investigation of Resource Reallocation 198 Capabilities of KVM and OpenStack 199 \item Review concepts and evaluate tools to reallocate memory, CPU 200 cycles, disk I/O and network bandwidth on the hypervisor 201 layer 202 \item Document existing resource reallocation capabilities of the 203 Kernel-based Virtual Machine (KVM) hypervisor module 204 \item Explore mechanisms to facilitate similar tasks on the 205 orchestration layer with an experimental OpenStack Compute 206 (nova) extension 207 \end{itemize} 208 \end{cvevent} 209 210 \cvseparator[5] 211 \begin{cvevent}[2011][2012] 212 \cvname{Military Service} 213 \cvdescription{Swiss Army} 214 Serve in the "FU Ber Kp 104-2" as signaller 215 \end{cvevent} 216 217 \cvseparator[5] 218 \begin{cvevent}[2007][2011] 219 \cvname{High school} 220 \cvdescription{Seelandgymnasium Biel} 221 Study focus "Physics and Mathematics" 222 \end{cvevent} 223 224 \cvsection[education]{Research experience} %---------------------------------------------------------- 225 226 \begin{cvevent}[Sep 2018][Nov 2018] 227 \cvname{Research Assistant Communication Systems Group (CSG)} 228 \cvdescription{University of Zurich (UZH)} 229 Research in the area of blockchain, distributed ledgers and reputation 230 systems 231 \end{cvevent} 232 233 \cvsection[education]{Teaching experience} %---------------------------------------------------------- 234 235 \begin{cvevent}[Dec 2025][Mar 2026] 236 \cvname{\href{https://cv.in0rdr.ch/2026/instructor-sssa/}{Ski teacher}} 237 \cvdescription{Swiss Ski School Savognin} 238 \begin{itemize} 239 \item Organize and realize skiing lessons for beginners and advanced skiers 240 \item Teaching and guidance for individuals and groups in German and English 241 \item Support with demonstrations, shows and other touristic activities 242 \end{itemize} 243 \end{cvevent} 244 245 \begin{cvevent}[Dec 2023][Mar 2024] 246 \cvname{\href{https://cv.in0rdr.ch/2023/aspirant-sssa/}{Ski teacher}} 247 \cvdescription{Swiss Ski School Savognin} 248 \end{cvevent} 249 250 \begin{cvevent}[Dec 2022][Mar 2023] 251 \cvname{\href{https://cv.in0rdr.ch/2023/aspirant-sssa/}{Ski teacher}} 252 \cvdescription{Swiss Ski School Savognin} 253 \end{cvevent} 254 255 \cvseparator[5] 256 \begin{cvevent}[Sep 2018][Nov 2018] 257 \cvname{Teaching Assistant Communication Systems Group (CSG)} 258 \cvdescription{University of Zurich (UZH)} 259 \begin{itemize} 260 \item Teaching assistant for the Communications Systems Lab under 261 guidance of Bruno Bastos Rodrigues and Prof. Dr. Burkhard 262 Stiller at the CSG 263 \item Develop and conduct Communication systems (ComSys) lab 264 sessions with students 265 \end{itemize} 266 \end{cvevent} 267 268 \cvsection[summary]{Publications} %---------------------------------------------------------- 269 270 \begin{cvevent}[][] 271 \cvname{Gruhler, Andreas, Bruno Rodrigues, and Burkhard Stiller. "A 272 Reputation Scheme for a Blockchain-based Network Cooperative Defense."} 273 \cvdescription{2019 IFIP/IEEE Symposium on Integrated Network and Service 274 Management (IM). IEEE, 2019.} 275 \end{cvevent} 276 277 \cvsection[summary]{Co-authored blog posts} %---------------------------------------------------------- 278 279 \begin{cvevent}[Nov 2023][] 280 \cvname{Secret zero with ACME} 281 \cvdescription{\href{https://www.adfinis.com/en/news/secret-zero-with-acme}{Link}} 282 \end{cvevent} 283 284 \cvseparator[5] 285 \begin{cvevent}[Jun 2023][] 286 \cvname{HashiDays Munich 2023} 287 \cvdescription{\href{https://www.adfinis.com/en/news/hashidays-munich-2023}{Link}} 288 \end{cvevent} 289 290 \cvseparator[5] 291 \begin{cvevent}[Dec 2022][] 292 \cvname{HashiCorp Vault on Exoscale Scalable Kubernetes Service (SKS)} 293 \cvdescription{\href{https://www.adfinis.com/en/news/hashicorp-vault-on-exoscale-scalable-kubernetes-service-sks}{Link}} 294 \end{cvevent} 295 296 \cvseparator[5] 297 \begin{cvevent}[Jul 2021][] 298 \cvname{How to Manage Secret Keys with HashiCorp Vault} 299 \cvdescription{\href{https://www.adfinis.com/en/news/how-to-manage-secret-keys-with-hashicorp-vault}{Link}} 300 \end{cvevent} 301 302 \cvseparator[5] 303 \begin{cvevent}[Mar 2021][] 304 \cvname{Database Clustering with Galera Cluster and Galera Manager} 305 \cvdescription{\href{https://www.adfinis.com/en/news/database-clustering-with-galera-cluster-and-galera-manager}{Link}} 306 \end{cvevent} 307 308 \cvseparator[5] 309 \begin{cvevent}[Jul 2019][] 310 \cvname{HashiConf Europe 2019} 311 \cvdescription{\href{https://www.adfinis.com/en/news/hashiconf-europe-2019}{Link}} 312 \end{cvevent} 313 314 \cvsection[publications]{Public speaking} %---------------------------------------------------------- 315 316 \begin{cvevent}[Jun 2024][] 317 \cvname{PostgreSQL in the snow} 318 \cvdescription{PGDay 2024 lightning talk} 319 \begin{itemize} 320 \item \href{https://www.pgday.ch/2024/\#schedule}{Schedule} 321 \item \href{https://www.pgday.ch/common/slides/2024_Lightning_Talks_Swiss_PGDay_2024.pdf}{Slides} (p. 38) 322 \item \href{https://code.in0rdr.ch/myheats}{Code} 323 \item \href{https://myheats-demo.p0c.ch}{Demo} 324 \item It was demonstrated how the scoring process for freestyle 325 events (e.g., slopestlye ski/snowboard) can be improved 326 with a live-updating leaderboard. The leaderboard makes use 327 PostgreSQL publications to continuously refresh the current 328 ranking. The Supabase platform enables rapid prototyping. 329 \end{itemize} 330 \end{cvevent} 331 332 \cvseparator[5] 333 \begin{cvevent}[Dec 2022][] 334 \cvname{Build, run and manage with Zero Trust on a Swiss Cloud} 335 \cvdescription{Zürich HashiCorp User Group (HUG)} 336 \begin{itemize} 337 \item \href{https://www.meetup.com/zurich-hashicorp-user-group/events/289349205}{Meetup} 338 \item \href{https://cv.in0rdr.ch/assets/pdf/HashiCorp_Vault_Enterprise_on_Exoscale.pdf}{Presentation} 339 \item \href{https://github.com/adfinis/sks-vault-demo}{Demo code} 340 \item Vault Deployment on Exoscale Scalable Kubernetes Service 341 (SKS) 342 \item Deploy Vault on Exoscale SKS with ArgoCD. In this short 343 rundown we will provision a Kubernetes cluster on Exoscale 344 (SKS), install ArgoCD and use that to spin up HashiCorp 345 Vault Enterprise. At the end of this session, you will also 346 be able to leverage the best practices around the "App of 347 Apps" approach for your projects, which we already use at 348 Adfinis to manage the lifecycle of mulitple apps across 349 clusters and customers. 350 \end{itemize} 351 \end{cvevent} 352 353 \cvseparator[5] 354 \begin{cvevent}[Jun 2019][] 355 \cvname{Traceable, fast and open - Ansible learnings from the capital city} 356 \cvdescription{Ansible Meetup Bern} 357 \begin{itemize} 358 \item \href{https://www.meetup.com/ansible-bern/events/262121854}{Meetup} 359 \item A stack of open source components is being built for the 360 public administration. The Red Hat stack could demonstrate 361 its strengths in many ways. A main advantage is Ansible for 362 day 1 and day 2 operations. Some processes could be 363 optimized to save precious time and tax money. 364 \end{itemize} 365 \end{cvevent} 366 367 \cvsidebar %----------------------------------------------------------------------------- 368 369 370 \cvsection[contact]{Contact} %---------------------------------------------------------- 371 372 \begin{cvitem}[Envelope][4] 373 \textbf{Email}\\ 374 \href{mailto:agruhl@gmx.ch}{\texttt{agruhl@gmx.ch}} 375 \end{cvitem} 376 377 \cvseparator[3] 378 \begin{cvitem}[Phone][4] 379 \textbf{Phone}\\ 380 \href{tel:+41774118542}{\texttt{+41 77 411 85 42}} 381 \end{cvitem} 382 383 \cvseparator[3] 384 \begin{cvitem}[Home][4] 385 \textbf{Address}\\ 386 Zurich, Switzerland 387 \end{cvitem} 388 389 \cvseparator[3] 390 \begin{cvitem}[Globe][4] 391 \textbf{Website}\\ 392 \href{https://cv.in0rdr.ch}{\texttt{cv.in0rdr.ch}} 393 \end{cvitem} 394 395 \cvsection[skills]{Certifications} %----------------------------------------------------------- 396 397 \begin{cvitem} 398 Local Internet Registry (LIR) Fundamentals 399 \end{cvitem} 400 \cvseparator[3] 401 \begin{cvitem} 402 AWS Certified Solutions Architect – Associate 403 \end{cvitem} 404 \cvseparator[3] 405 \begin{cvitem} 406 CKA: Certified Kubernetes Administrator 407 \end{cvitem} 408 \cvseparator[3] 409 \begin{cvitem} 410 HashiCorp Certified: Vault Operations Professional 411 \end{cvitem} 412 \cvseparator[3] 413 \begin{cvitem} 414 HashiCorp Certified: Terraform Associate 415 \end{cvitem} 416 \cvseparator[3] 417 \begin{cvitem} 418 \href{https://www.credly.com/users/andreas-gruhler/badges}{Credly Badges} 419 \end{cvitem} 420 421 \cvsection[languages]{Languages} %-------------------------------------------------------- 422 423 \cvskill{German}{Fluent}{1.0} 424 \cvskill{English}{Intermediate}{0.6} 425 \cvskill{French}{Basic}{0.3} 426 427 \end{cv} 428 429 \cvfootnote{ 430 \tiny last updated 2025-09-20, 431 \href{https://github.com/mateuszbaransanok/BubbleCV}{BubbleCV} template by Mateusz Baran 432 } 433 434 \end{document} 435