cv-bubble

Personal PDF CV, fork of github.com/mateuszbaransanok/BubbleCV
git clone https://git.in0rdr.ch/cv-bubble.git
Log | Files | Refs | Pull requests |Archive | README | LICENSE

main.tex (16991B)


      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 Participate in strategic initiatives, support of the product
     26 		teams with architecture decisions for 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}[Dec 2022][Mar 2023]
    152     \cvname{Aspirant Swiss Snowsports Association (SSSA)}
    153     \cvdescription{Swiss Ski School Savognin}
    154 \end{cvevent}
    155 
    156 \cvseparator[5]
    157 \begin{cvevent}[2015][2018]
    158     \cvname{Master in Information Systems}
    159     \cvdescription{University of Zurich (UZH)}
    160     \begin{itemize}
    161             \item Master thesis: A Reputation and Reward Scheme for a
    162                     Cooperative, Multi-domain DDoS Defense
    163             \item Explore design, implementation and evaluation of a
    164                     blockchain-based reputation and reward scheme to
    165                     incentivize participants and penalize malicious peers in a
    166                     cooperative defense
    167              \item Master project: Blockchain in Automotive Industry
    168              \item Elicit requirements for a novel digital car dossier,
    169                      resulting in a prototype with Hyperledger Fabric
    170     \end{itemize}
    171 \end{cvevent}
    172 
    173 \cvseparator[5]
    174 \begin{cvevent}[Aug 2016][Dec 2016]
    175     \cvname{Exchange Semester}
    176     \cvdescription{Nanyang Technological University (NTU), Singapore}
    177     \begin{itemize}
    178             \item Algorithms \& Theory of Computing
    179             \item Informational Biology
    180     \end{itemize}
    181 \end{cvevent}
    182 
    183 \cvseparator[5]
    184 \begin{cvevent}[2012][2015]
    185     \cvname{Bachelor in Information Systems}
    186     \cvdescription{University of Zurich (UZH)}
    187     \begin{itemize}
    188             \item Bachelor thesis: Investigation of Resource Reallocation
    189                     Capabilities of KVM and OpenStack
    190             \item Review concepts and evaluate tools to reallocate memory, CPU
    191                     cycles, disk I/O and network bandwidth on the hypervisor
    192                     layer
    193             \item Document existing resource reallocation capabilities of the
    194                     Kernel-based Virtual Machine (KVM) hypervisor module
    195             \item Explore mechanisms to facilitate similar tasks on the
    196                     orchestration layer with an experimental OpenStack Compute
    197                     (nova) extension
    198     \end{itemize}
    199 \end{cvevent}
    200 
    201 \cvseparator[5]
    202 \begin{cvevent}[2011][2012]
    203     \cvname{Military Service}
    204     \cvdescription{Swiss Army}
    205     Serve in the "FU Ber Kp 104-2" as signaller
    206 \end{cvevent}
    207 
    208 \cvseparator[5]
    209 \begin{cvevent}[2007][2011]
    210     \cvname{High school}
    211     \cvdescription{Seelandgymnasium Biel}
    212     Study focus "Physics and Mathematics"
    213 \end{cvevent}
    214 
    215 \cvsection[education]{Research experience}  %----------------------------------------------------------
    216 
    217 \begin{cvevent}[Sep 2018][Nov 2018]
    218     \cvname{Research Assistant Communication Systems Group (CSG)}
    219     \cvdescription{University of Zurich (UZH)}
    220     Research in the area of blockchain, distributed ledgers and reputation
    221         systems
    222 \end{cvevent}
    223 
    224 \cvsection[education]{Teaching experience}  %----------------------------------------------------------
    225 
    226 \begin{cvevent}[Dec 2022][Mar 2023]
    227     \cvname{Aspirant Swiss Snowsports Association (SSSA)}
    228     \cvdescription{Swiss Ski School Savognin}
    229     \begin{itemize}
    230             \item Organize and realize skiing lessons for beginners and advanced skiers
    231             \item Teaching and guidance for individuals and groups in German and English
    232             \item Support with demonstrations, shows and other touristic activities
    233     \end{itemize}
    234 \end{cvevent}
    235 
    236 \cvseparator[5]
    237 \begin{cvevent}[Sep 2018][Nov 2018]
    238     \cvname{Teaching Assistant Communication Systems Group (CSG)}
    239     \cvdescription{University of Zurich (UZH)}
    240     \begin{itemize}
    241             \item Teaching assistant for the Communications Systems Lab under
    242                     guidance of Bruno Bastos Rodrigues and Prof. Dr. Burkhard
    243                     Stiller at the CSG
    244             \item Develop and conduct Communication systems (ComSys) lab
    245                     sessions with students
    246     \end{itemize}
    247 \end{cvevent}
    248 
    249 \cvsection[summary]{Publications}  %----------------------------------------------------------
    250 
    251 \begin{cvevent}[][]
    252     \cvname{Gruhler, Andreas, Bruno Rodrigues, and Burkhard Stiller. "A
    253         Reputation Scheme for a Blockchain-based Network Cooperative Defense."}
    254     \cvdescription{2019 IFIP/IEEE Symposium on Integrated Network and Service
    255         Management (IM). IEEE, 2019.}
    256 \end{cvevent}
    257 
    258 \cvsection[summary]{Co-authored blog posts}  %----------------------------------------------------------
    259 
    260 \begin{cvevent}[Nov 2023][]
    261     \cvname{Secret zero with ACME}
    262     \cvdescription{\href{https://www.adfinis.com/en/news/secret-zero-with-acme}{Link}}
    263 \end{cvevent}
    264 
    265 \cvseparator[5]
    266 \begin{cvevent}[Jun 2023][]
    267     \cvname{HashiDays Munich 2023}
    268     \cvdescription{\href{https://www.adfinis.com/en/news/hashidays-munich-2023}{Link}}
    269 \end{cvevent}
    270 
    271 \cvseparator[5]
    272 \begin{cvevent}[Dec 2022][]
    273     \cvname{HashiCorp Vault on Exoscale Scalable Kubernetes Service (SKS)}
    274     \cvdescription{\href{https://www.adfinis.com/en/news/hashicorp-vault-on-exoscale-scalable-kubernetes-service-sks}{Link}}
    275 \end{cvevent}
    276 
    277 \cvseparator[5]
    278 \begin{cvevent}[Jul 2021][]
    279     \cvname{How to Manage Secret Keys with HashiCorp Vault}
    280     \cvdescription{\href{https://www.adfinis.com/en/news/how-to-manage-secret-keys-with-hashicorp-vault}{Link}}
    281 \end{cvevent}
    282 
    283 \cvseparator[5]
    284 \begin{cvevent}[Mar 2021][]
    285     \cvname{Database Clustering with Galera Cluster and Galera Manager}
    286     \cvdescription{\href{https://www.adfinis.com/en/news/database-clustering-with-galera-cluster-and-galera-manager}{Link}}
    287 \end{cvevent}
    288 
    289 \cvseparator[5]
    290 \begin{cvevent}[Jul 2019][]
    291     \cvname{HashiConf Europe 2019}
    292     \cvdescription{\href{https://www.adfinis.com/en/news/hashiconf-europe-2019}{Link}}
    293 \end{cvevent}
    294 
    295 \cvsection[publications]{Public speaking}  %----------------------------------------------------------
    296 
    297 \begin{cvevent}[Jun 2024][]
    298     \cvname{PostgreSQL in the snow}
    299     \cvdescription{PGDay 2024 lightning talk}
    300     \begin{itemize}
    301             \item \href{https://www.pgday.ch/2024/\#schedule}{Schedule}
    302             \item \href{https://www.pgday.ch/common/slides/2024_Lightning_Talks_Swiss_PGDay_2024.pdf}{Slides} (p. 38)
    303             \item \href{https://code.in0rdr.ch/myheats}{Code}
    304             \item \href{https://myheats-demo.p0c.ch}{Demo}
    305             \item It was demonstrated how the scoring process for freestyle
    306                     events (e.g., slopestlye ski/snowboard) can be improved
    307                     with a live-updating leaderboard. The leaderboard makes use
    308                     PostgreSQL publications to continuously refresh the current
    309                     ranking. The Supabase platform enables rapid prototyping.
    310     \end{itemize}
    311 \end{cvevent}
    312 
    313 \cvseparator[5]
    314 \begin{cvevent}[Dec 2022][]
    315     \cvname{Build, run and manage with Zero Trust on a Swiss Cloud}
    316     \cvdescription{Zürich HashiCorp User Group (HUG)}
    317     \begin{itemize}
    318             \item \href{https://www.meetup.com/zurich-hashicorp-user-group/events/289349205}{Meetup}
    319             \item \href{https://cv.in0rdr.ch/assets/pdf/HashiCorp_Vault_Enterprise_on_Exoscale.pdf}{Presentation}
    320             \item \href{https://github.com/adfinis/sks-vault-demo}{Demo code}
    321             \item Vault Deployment on Exoscale Scalable Kubernetes Service
    322                     (SKS)
    323             \item Deploy Vault on Exoscale SKS with ArgoCD. In this short
    324                     rundown we will provision a Kubernetes cluster on Exoscale
    325                     (SKS), install ArgoCD and use that to spin up HashiCorp
    326                     Vault Enterprise. At the end of this session, you will also
    327                     be able to leverage the best practices around the "App of
    328                     Apps" approach for your projects, which we already use at
    329                     Adfinis to manage the lifecycle of mulitple apps across
    330                     clusters and customers.
    331     \end{itemize}
    332 \end{cvevent}
    333 
    334 \cvseparator[5]
    335 \begin{cvevent}[Jun 2019][]
    336     \cvname{Traceable, fast and open - Ansible learnings from the capital city}
    337     \cvdescription{Ansible Meetup Bern}
    338     \begin{itemize}
    339             \item \href{https://www.meetup.com/ansible-bern/events/262121854}{Meetup}
    340             \item A stack of open source components is being built for the
    341                     public administration. The Red Hat stack could demonstrate
    342                     its strengths in many ways. A main advantage is Ansible for
    343                     day 1 and day 2 operations. Some processes could be
    344                     optimized to save precious time and tax money.
    345     \end{itemize}
    346 \end{cvevent}
    347 
    348 \cvsidebar %-----------------------------------------------------------------------------
    349 
    350 
    351 \cvsection[contact]{Contact}  %----------------------------------------------------------
    352 
    353 \begin{cvitem}[Envelope][4]
    354     \textbf{Email}\\
    355     \href{mailto:agruhl@gmx.ch}{\texttt{agruhl@gmx.ch}}
    356 \end{cvitem}
    357 
    358 \cvseparator[3]
    359 \begin{cvitem}[Phone][4]
    360     \textbf{Phone}\\
    361     \href{tel:+41774118542}{\texttt{+41 77 411 85 42}}
    362 \end{cvitem}
    363 
    364 \cvseparator[3]
    365 \begin{cvitem}[Home][4]
    366     \textbf{Address}\\
    367     Zurich, Switzerland
    368 \end{cvitem}
    369 
    370 \cvseparator[3]
    371 \begin{cvitem}[Globe][4]
    372     \textbf{Website}\\
    373     \href{https://cv.in0rdr.ch}{\texttt{cv.in0rdr.ch}}
    374 \end{cvitem}
    375 
    376 \cvsection[skills]{Certifications}  %-----------------------------------------------------------
    377 
    378 \begin{cvitem}
    379     Local Internet Registry (LIR) Fundamentals
    380 \end{cvitem}
    381 \cvseparator[3]
    382 \begin{cvitem}
    383     AWS Certified Solutions Architect – Associate
    384 \end{cvitem}
    385 \cvseparator[3]
    386 \begin{cvitem}
    387     CKA: Certified Kubernetes Administrator
    388 \end{cvitem}
    389 \cvseparator[3]
    390 \begin{cvitem}
    391     HashiCorp Certified: Vault Operations Professional
    392 \end{cvitem}
    393 \cvseparator[3]
    394 \begin{cvitem}
    395     HashiCorp Certified: Terraform Associate
    396 \end{cvitem}
    397 \cvseparator[3]
    398 \begin{cvitem}
    399     \href{https://www.credly.com/users/andreas-gruhler/badges}{Credly Badges}
    400 \end{cvitem}
    401 
    402 \cvsection[languages]{Languages}  %--------------------------------------------------------
    403 
    404 \cvskill{German}{Fluent}{1.0}
    405 \cvskill{English}{Intermediate}{0.6}
    406 \cvskill{French}{Basic}{0.3}
    407 
    408 \end{cv}
    409 
    410 \cvfootnote{
    411 	\tiny last updated 2025-09-20,
    412 	\href{https://github.com/mateuszbaransanok/BubbleCV}{BubbleCV} template by Mateusz Baran
    413 }
    414 
    415 \end{document}
    416