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