Scout run 2026-09-04 (36 companies, 778 eligible) plus the NVIDIA package it surfaced, and the tooling and policy fixes found along the way. Application - NVIDIA Senior DevOps Engineer, Zurich (JR2024256): submitted 2026-09-05. Evidence Fit 64/100 Stretch, hard gate FAIL x2, channel Weak. Sent on an explicit user override with the working model unresolved, so hybrid-vs-onsite is a live screening topic. 2pp resume + 1pp cover letter, both validators PASS, 0 boxes, 0 Tier 1 findings open. Policy - Drop the 7 Core / 2 Adjacent / 1 Stretch cohort caps. They had no derivation and were overridden whenever they bound, and the cohort was confounded: it tested fit class while holding channel constant at Weak across all six applications. Keep the recording, drop the rationing. - Channel replaces the slot budget as the rationed variable: no application goes out cold when a named contact is published and reachable. - Propagated through shared_ops, session_file_template, cohort_tracker (counts, never counts-against-a-target) and application_cohort.json. Tool fixes - fetch_workday emitted 404 URLs for every Workday company (NVIDIA, Novartis, Equinor): externalPath is site-relative and needs the locale + site prefix. 6/6 short-form 404, 3/3 long-form 200. 773 dead links repaired across 42 archived reports. - find_decision_url silently de-linked decisions on two boards, which is why ruled-out roles kept resurfacing as undecided. RUAG rotates its UUID on repost; BIS migrated its vacancy URL scheme, orphaning 5 decisions including a live application. Fixed as a two-tier match, not a slug key -- slugs collide (two live RUAG reqs shared one). Knowledge base - claims.json: add Bash / shell scripting, the third canonical gap of this shape after Ansible and Linux administration. - bundle_data_platform: BS-4 was framed as a delivered observability stack over what claims.json calls a proof of concept -- the defect the 2026-08-21 sweep was told to look for. - CLAUDE.md and AGENTS.md: correct the RUAG Data Lakehouse shortlist claim, which the JD does not support and which both files still asserted. - resume_template: comment-guard the missing babel/ngerman language block. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QFb8tTCig5r1KzkQiNXcYt
105 lines
7.5 KiB
TeX
105 lines
7.5 KiB
TeX
% NVIDIA — Senior DevOps Engineer (Zurich, req JR2024256)
|
|
% International Tech profile. Generated 2026-09-04 from resume_builder/canonical/claims.json
|
|
% plus normalized experience files. Session: session_nvidia_sr_devops.md
|
|
|
|
\documentclass{resume}
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage{lmodern}
|
|
% English-language document: TeX's default hyphenation patterns are correct here.
|
|
% A German package would need \usepackage[ngerman]{babel} — see the template's language note.
|
|
\usepackage[a4paper,left=0.65in,right=0.65in,top=0.55in,bottom=0.55in]{geometry}
|
|
\usepackage{xcolor}
|
|
\usepackage{hyperref}
|
|
\hypersetup{hidelinks}
|
|
\usepackage[version=4]{mhchem}
|
|
\usepackage{fancyhdr}
|
|
\pagestyle{fancy}
|
|
\fancyhf{}
|
|
\renewcommand{\headrulewidth}{0pt}
|
|
\fancyfoot[R]{\small \thepage/\pageref{LastPage}}
|
|
|
|
\name{Dennis Thiessen, M.Eng.}
|
|
\headline{Staff Engineer $\vert$ Linux, Ansible \& Kubernetes $\vert$ CI/CD and Infrastructure Automation}
|
|
\contactline{Bern, Switzerland $\vert$ \href{mailto:dennis@thiessen.io}{dennis@thiessen.io} $\vert$ +41 795 955 585 $\vert$ \href{https://linkedin.com/in/dennis-thiessen}{LinkedIn} $\vert$ EU citizen, Swiss B permit}
|
|
|
|
\begin{document}
|
|
|
|
\begin{rSection}{Summary}
|
|
Engineer with over ten years building the automation and delivery layer that engineering and research teams rely on: Jenkins and GitLab CI/CD, containerized delivery on Kubernetes, and Ansible-driven Linux server automation. Integrated containerized ML inference into a continuously operating semiconductor fab, and today owns business-critical pipeline components on call at Swisscom.
|
|
\end{rSection}
|
|
|
|
\begin{rSection}{Technical Skills}
|
|
% Debian only: claims.json has Debian x2, Ubuntu x0 (PP-3 is a Debian server). The
|
|
% Debian-to-Ubuntu transfer argument is an interview answer, not a skills-line claim.
|
|
\skillline{Infrastructure and automation}{Linux administration (Debian), Ansible configuration management including custom plugins, Kubernetes container orchestration, Docker, infrastructure as code (CloudFormation)}
|
|
\skillline{CI/CD and delivery}{GitLab CI/CD, Jenkins, containerized build and deployment, automated testing and quality gates}
|
|
% Hardening is marked personal-side per the explicit claims.json instruction on Linux
|
|
% administration: the evidence "leans on the personal side; say so".
|
|
\skillline{Operations}{On-call and incident response, SLO definition and service reliability, application and component ownership, DevSecOps; security hardening (personal server)}
|
|
\skillline{Monitoring and observability}{ELK Stack (Elasticsearch, Logstash, Kibana), Grafana, Prometheus, Loki --- proof-of-concept work}
|
|
\skillline{Cloud and data}{AWS (S3, Glue, Athena/Iceberg, Redshift, Airflow), Apache Kafka, PySpark, Oracle, Teradata, Hadoop/Impala}
|
|
% Bash added 2026-09-05 after the user confirmed it; now canonical in claims.json
|
|
% (production-historical-and-personal-current, same evidence basis as Linux administration).
|
|
% Groovy stays out - still unverified and forbidden.
|
|
\skillline{Languages and certifications}{Python, Bash, SQL; Java and C\# (professional, historical); C++ (limited historical use). AWS Solutions Architect -- Associate; Data Engineering with AWS; iSAQB CPSA-F; ITIL Foundation}
|
|
\end{rSection}
|
|
|
|
\begin{rSection}{Professional Experience}
|
|
|
|
\begin{rSubsection}{Swisscom (Schweiz) AG}{Oct 2023 -- Present}{Staff Data, Analytics \& AI Engineer (promoted from Senior, Apr 2025)}{Bern, Switzerland}
|
|
\item Build and operate Python data applications on Kubernetes with GitLab CI/CD, covering containerized delivery from test through production operation in an agile team.
|
|
\item Own business-critical Fulfillment ETL components as Component Owner with on-call duty for their production operation and data quality.
|
|
\item Migrated the Fulfillment and Product Analysis domains' legacy Teradata and Oracle ETL onto Swisscom's AWS platform using Glue, Athena/Iceberg, Redshift, Airflow and CloudFormation, contributing to the wider migration programme.
|
|
\item Serve as the team's Security Champion for 2025/2026 with responsibility for security compliance and deviation tracking across its pipelines, after 100 hours of DevSecOps training.
|
|
\item Model and build governed data products with active metadata management inside Swisscom's company-wide Data Mesh on AWS, using Glue, Athena and CloudFormation.
|
|
\end{rSubsection}
|
|
|
|
\end{rSection}
|
|
|
|
% Forced break kept: letting LaTeX flow naturally split the Bosch position across pages with no
|
|
% continuation header, which costs more in information hierarchy than page-1 white space does.
|
|
\newpage
|
|
|
|
\begin{rSection}{Professional Experience (continued)}
|
|
|
|
\begin{rSubsection}{Robert Bosch Semiconductor Manufacturing Dresden GmbH}{Feb 2020 -- Dec 2022}{Senior Data Engineer, Data Analysis (promoted from Data Engineer, Jan 2021)}{Dresden, Germany}
|
|
\item Administered and automated the Linux server estate behind fab analytics and ML workloads --- ML platform hosts, Docker hosts and backend services --- with Ansible playbooks version-controlled in Git and applied from Jenkins and GitLab pipelines.
|
|
\item Extended Ansible with a custom credential plugin that retrieved secrets from a password keystore and cached them locally, cutting repeated lookups.
|
|
\item Integrated containerized ML inference into a continuously operating semiconductor fab using Docker, Kubernetes and Ansible, automating image-based defect classification and reducing manual inspection work for line engineers.
|
|
\item Built an anomaly-detection proof of concept on ELK and Kafka in Docker, with Grafana, Prometheus and Loki monitoring, to validate centralized logging and alerting for 24/7 production systems.
|
|
\end{rSubsection}
|
|
|
|
\begin{rSubsection}{Fraunhofer CML}{Sep 2018 -- Oct 2019}{Research Software Engineer}{Hamburg, Germany}
|
|
\item Set up the research team's first Jenkins CI/CD pipeline with quality gates while developing C\#/.NET software and containerized microservices for maritime research platforms.
|
|
\end{rSubsection}
|
|
|
|
\begin{rSubsection}{Vizrt}{Jul 2017 -- May 2018}{Test Automation / DevOps Engineer}{Bergen, Norway}
|
|
\item Automated audio and video integration testing in Python for broadcast software, then wired the suite into CI/CD quality gates to shorten the feedback loop on new features.
|
|
\end{rSubsection}
|
|
|
|
\begin{rSubsection}{Generali Deutschland Informatik Services GmbH}{May 2015 -- Jun 2017}{IT Consultant}{Hamburg, Germany}
|
|
\item Introduced BDD test automation through a proof of concept and held technical responsibility for the suite and its Jenkins jobs, training colleagues across the internal Java community.
|
|
\end{rSubsection}
|
|
|
|
\end{rSection}
|
|
|
|
\begin{rSection}{Personal Projects}
|
|
% No date range: claims.json PP-3 records only a self-reported "~10 years", so a precise
|
|
% start year would assert more than the KB supports. The bullet carries the approximation.
|
|
\begin{rSubsection}{Self-hosted Linux server}{Ongoing}{Personal project}{}
|
|
\item Run and harden a self-hosted Debian server in continuous operation for around ten years, serving nginx, mail, Nextcloud, a VPN and Docker services.
|
|
\end{rSubsection}
|
|
\end{rSection}
|
|
|
|
\begin{rSection}{Education}
|
|
\compactentry{M.Eng. Computer Aided Engineering (Software Design \& Engineering), Universität der Bundeswehr München}{Apr 2012 -- Oct 2013}
|
|
% Thesis grade omitted: claims.json grade_output_rule allows the 1.0 only "where academic
|
|
% performance is genuinely valued". A 10+-years hands-on infrastructure role is not that.
|
|
Thesis at Tongji University, Shanghai: \textit{Development of a Web-Based Remote Fault Diagnosis System}.
|
|
|
|
\compactentry{B.Eng. Information and Telecommunication Technologies, Universität der Bundeswehr München}{Oct 2009 -- Oct 2012}
|
|
\end{rSection}
|
|
|
|
\end{document}
|