feat(app): Swisscom Data Engineer - Geo Platform (internal, R-0006447), submitted

Internal application, submitted 2026-09-15. Evidence Fit 78, hard gate FAIL
(ArcGIS and FME required, never used), overridden by the user. Document
Quality 89, no Tier 1 findings. Channel Moderate: hiring manager Marianne
Temerowski was contacted first and encouraged the application - the first
time a named contact was used before applying. 2-page English resume, no
cover letter (internal).

KB CORRECTIONS FOUND ON THE WAY
- BS-8: geospatial work at Bosch (Oracle SDO_GEOMETRY; normalizing and
  transforming wafer data across coordinate reference systems; performance
  tuning) was missing from claims.json. The first assessment also wrongly
  assumed wafer data carries no CRS; the user corrected it. ArcGIS, FME, QGIS,
  PostGIS, GeoServer and GDAL are registered as forbidden.
- Swisscom was recorded as one undifferentiated current role. It is two
  units: ART B2B (past - Teradata DWH component ownership, Kubernetes, GitLab
  CI/CD, Kafka) and ART DPT, Team Offering (current - AWS data products with
  ODP-Flow, PySpark/Python, Glue, Iceberg, Athena, Airflow). The first build
  wrote the B2B ownership in present tense. Kafka and Kubernetes are now
  production-historical. Official internal title recorded (Engineer IV, III
  before Apr 2025); the unit switch date deliberately not.
- Confirmed: SW-1 migration in Python Glue jobs with ODP-Flow; SW-3
  multi-environment deployments; SW-7 relational data models. SW-3 narrowed:
  he worked with automated GitLab CI/CD and did not build it.
- Skills added: Apache Iceberg, relational data modelling, ODP-Flow, Oracle
  SDO_GEOMETRY, coordinate system transformation.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
dennisthiessenandClaude Opus 5 committed 2026-09-15 15:00:06 +02:00
1 parent 34299bce54
commit 881d904e68
12 files changed
+749 -23

No files matched your search

+2
View File
@@ -183,6 +183,8 @@ _See `config.md` for user-specific corrections. Add verified errors here as you
| Date | Correction | Files fixed | | Date | Correction | Files fixed |
|------|-----------|-------------| |------|-----------|-------------|
| 2026-09-15 | **Swisscom was recorded as one undifferentiated current role, so past work read as present.** The first Geo Platform build said *"Own the ETL pipeline components"* and *"Owns ... Teradata"* in the summary - wrong. User-supplied: the tenure has two phases. **ART B2B** (first part, PAST): the legacy Teradata DWH - Fulfillment ETL component ownership (SW-2), Python on Kubernetes with GitLab CI/CD (SW-3), dashboards and analyses (SW-4), Kafka. **ART DPT, Team Offering** (CURRENT): migration and implementation of AWS data products on AWS, ODP-Flow, PySpark/Python, Glue, Iceberg, Athena, Airflow (SW-1, SW-6, SW-7). **Kafka and Kubernetes downgraded to `production-historical`**; SW-2/SW-3/SW-4 allowed verbs are now past tense; Apache Iceberg added as a canonical skill. Official internal title recorded: `Data, Analytics & AI Engineer IV` (III before Apr 2025), per the Oct 2025 Zwischenzeugnis. **The switch date is deliberately not recorded (user: not relevant) - never date the two units.** Any already-submitted package that presents Swisscom Kubernetes, Kafka or Teradata ownership as current stays as submitted history, but expect the question in interviews. **Lesson: the Zwischenzeugnis gives the whole tenure as one duty list, and a duty list says nothing about which duties are current - ask which phase each belongs to.** Same session, same shape: the Zeugnis's *"automation of CI/CD processes in GitLab"* overstated his part - the user clarified he **worked with** automated GitLab CI/CD rather than building it, and SW-3 now forbids claiming the automation. | `claims.json` (SWISSCOM org/title history; SW-1/2/3/4/6/7; Kafka, Kubernetes, Apache Iceberg; SW-3 CI/CD scope); `experience_swisscom.md` SW-3; Geo Platform resume |
| 2026-09-15 | **Geospatial evidence was missing from `claims.json` - the fifth canonical gap of the Ansible/Linux/Bash/Kotlin shape - and the first assessment compounded it with a wrong assumption about the domain.** Surfaced by the internal Swisscom posting *Data Engineer - Geo Platform* (R-0006447), which requires *"Fundierte Praxis mit ArcGIS und FME"*. User-confirmed: at Bosch he worked extensively with geospatial data in Oracle (**`SDO_GEOMETRY`**) and TIBCO Spotfire to visualize, locate and analyze wafer data, across **multiple coordinate reference systems** - normalizing and transforming between them was the main difficulty of the work, performance tuning the other. Recorded as **BS-8** plus two `allowed-with-context` skills. **The assessment first asserted that wafer coordinates carry no CRS and scored the geo lines on that basis; it was wrong and the user corrected it.** Boundary kept, not re-litigated: geographic/geodetic specifics (datums, map projections, EPSG, LV95) are not established. **ArcGIS, FME, QGIS, PostGIS, GeoServer and GDAL are user-confirmed never used** and are now registered `forbidden` so the scanner catches them. **Lesson: do not discount a domain bridge on an assumption about the domain - ask the discriminating question before scoring.** | `claims.json` (BS-8; 2 new skills; 6 forbidden skills) |
| 2026-09-05 | **The ten-application cohort's slot caps (7 Core / 2 Adjacent / 1 Stretch) were DROPPED by user decision.** Two reasons, both evidenced. **(a) The numbers were arbitrary and non-binding:** no derivation existed anywhere, and they were routed around whenever they bound - RUAG AI Engineer went in at Evidence Fit 74 with a hard-gate FAIL, and Citadel was recorded Adjacent when the strict reading said Stretch. **(b) The cohort was a confounded experiment:** it was built to test *fit class*, but the variable it silently held constant was *channel* - `cohort_tracker.py` reports **channel weak: 6, moderate: 0, strong: 0**. It therefore could not separate "Stretch does not convert" from "cold does not convert", and the evidence points away from fit class regardless: the highest-scoring package in the log (Snowflake, ~86) drew no reply in 80 days, while the single interview (SBB) came from a **cold Core submit whose resume was missing the three ATS literals** the session had flagged. **What was kept is the recording, not the rationing** - fit class, hard gate, channel, date, stage and outcome are still logged on every application, because that record is what makes patterns visible rather than re-derived. **Channel replaces the slot budget as the rationed variable: no application goes out cold when a named contact is published and reachable** - Marco Heinzen (RUAG), Andri Wienandts (SBB) and Per Olav Marthinsen (Aker BP) were all published, reachable and never used. **Fit class is now a preparation signal, not a spend limit:** 64/100 means know which two questions are coming, not do not apply. Hard gates and NO-GO triggers are unchanged. **Three real constraints survive independently and must not be dropped with the caps:** Google's 3-applications-per-rolling-30-days and 90-day same-role wait; not stacking a second cold application on one org while the first is pending; and the hours each package actually costs. Propagated to `application_strategy.md`, `shared_ops.md`, `session_file_template.md`, `cohort_tracker.py` (now prints counts, never counts-against-a-target) and `application_cohort.json`. | `application_strategy.md`; `shared_ops.md`; `session_file_template.md`; `cohort_tracker.py`; `application_cohort.json`; `CLAUDE.md` | | 2026-09-05 | **The ten-application cohort's slot caps (7 Core / 2 Adjacent / 1 Stretch) were DROPPED by user decision.** Two reasons, both evidenced. **(a) The numbers were arbitrary and non-binding:** no derivation existed anywhere, and they were routed around whenever they bound - RUAG AI Engineer went in at Evidence Fit 74 with a hard-gate FAIL, and Citadel was recorded Adjacent when the strict reading said Stretch. **(b) The cohort was a confounded experiment:** it was built to test *fit class*, but the variable it silently held constant was *channel* - `cohort_tracker.py` reports **channel weak: 6, moderate: 0, strong: 0**. It therefore could not separate "Stretch does not convert" from "cold does not convert", and the evidence points away from fit class regardless: the highest-scoring package in the log (Snowflake, ~86) drew no reply in 80 days, while the single interview (SBB) came from a **cold Core submit whose resume was missing the three ATS literals** the session had flagged. **What was kept is the recording, not the rationing** - fit class, hard gate, channel, date, stage and outcome are still logged on every application, because that record is what makes patterns visible rather than re-derived. **Channel replaces the slot budget as the rationed variable: no application goes out cold when a named contact is published and reachable** - Marco Heinzen (RUAG), Andri Wienandts (SBB) and Per Olav Marthinsen (Aker BP) were all published, reachable and never used. **Fit class is now a preparation signal, not a spend limit:** 64/100 means know which two questions are coming, not do not apply. Hard gates and NO-GO triggers are unchanged. **Three real constraints survive independently and must not be dropped with the caps:** Google's 3-applications-per-rolling-30-days and 90-day same-role wait; not stacking a second cold application on one org while the first is pending; and the hours each package actually costs. Propagated to `application_strategy.md`, `shared_ops.md`, `session_file_template.md`, `cohort_tracker.py` (now prints counts, never counts-against-a-target) and `application_cohort.json`. | `application_strategy.md`; `shared_ops.md`; `session_file_template.md`; `cohort_tracker.py`; `application_cohort.json`; `CLAUDE.md` |
| 2026-09-05 | **`Bash` / shell scripting was missing from `claims.json` entirely - the third canonical gap of exactly this shape, after Ansible and Linux administration (both 2026-08-27).** It surfaced while building the NVIDIA Senior DevOps package: the JD names *"proficient scripting skills in Bash, Python, or Groovy"*, and ten years of Debian administration plus intensive Ansible work at Bosch plainly involve shell scripting - but the canonical file was silent, so under the evidence-first rule the skill was **unwritable** and was deliberately left off the resume. User-confirmed 2026-09-05 and added as `production-historical-and-personal-current`, `output: allowed`, with the same evidence basis as Linux administration (`BS-6` professional 2020-2022; `PP-3` personal and current). The note records two hard limits: it does **not** license **Groovy**, which stays unverified and forbidden, and it does **not** license systems-programming or kernel-level claims. **Systemic lesson, now three times over: the KB is data-engineering shaped and under-records ordinary infrastructure and operations skills. Before scoring any DevOps/platform/SRE JD, ask about ops evidence explicitly rather than trusting `claims.json` to be complete.** Edit note confirmed again: the file is compact inline JSON with CRLF - patch it as text; this change was 6 insertions with no reformatting. | `claims.json` (new skill); NVIDIA resume Languages line | | 2026-09-05 | **`Bash` / shell scripting was missing from `claims.json` entirely - the third canonical gap of exactly this shape, after Ansible and Linux administration (both 2026-08-27).** It surfaced while building the NVIDIA Senior DevOps package: the JD names *"proficient scripting skills in Bash, Python, or Groovy"*, and ten years of Debian administration plus intensive Ansible work at Bosch plainly involve shell scripting - but the canonical file was silent, so under the evidence-first rule the skill was **unwritable** and was deliberately left off the resume. User-confirmed 2026-09-05 and added as `production-historical-and-personal-current`, `output: allowed`, with the same evidence basis as Linux administration (`BS-6` professional 2020-2022; `PP-3` personal and current). The note records two hard limits: it does **not** license **Groovy**, which stays unverified and forbidden, and it does **not** license systems-programming or kernel-level claims. **Systemic lesson, now three times over: the KB is data-engineering shaped and under-records ordinary infrastructure and operations skills. Before scoring any DevOps/platform/SRE JD, ask about ops evidence explicitly rather than trusting `claims.json` to be complete.** Edit note confirmed again: the file is compact inline JSON with CRLF - patch it as text; this change was 6 insertions with no reformatting. | `claims.json` (new skill); NVIDIA resume Languages line |
| 2026-09-04 | **This file asserted a shortlist that the JD does not support, and the 2026-08-31 scout triage had already caught it — but nothing was written here, so it survived into the next session exactly as that triage predicted.** The RUAG session block called **Senior DevOps Engineer C5I** *and* **Data Lakehouse / Senior Data Platform Engineer** "both already shortlisted and materially better fits… where his evidence is Direct rather than Adjacent." Only the first half held. The Data Lakehouse claim was a **title-match prior**: the live JD is **on-prem, MSSQL, Talend, SAP S/4HANA**, and `claims.json` has **0** for all three. RUAG then settled it itself — between the 08-31 and 09-04 scrapes the req was pulled and reposted as **"Senior Data Engineer (MSSQL) mit Data Lakehouse Perspektive"**, with the disqualifier moved into the title; its sibling *Senior Data Analyst & Data Scientist* was likewise reposted as *Senior BI Specialist (Qlik Sense)*. Required line reads *"mehrjährige Erfahrung im Aufbau und Betrieb von **on premise** Data Warehouse Lösungen"* — his stack is AWS cloud-native. Senior DevOps C5I re-verified live on the board 2026-09-04 and stays rank 1. **Systemic lesson: a triage finding that is not written into this log does not exist. Close the loop in the same session that finds it.** | `CLAUDE.md` (RUAG session block); `reports/2026-09-04.triage.md` | | 2026-09-04 | **This file asserted a shortlist that the JD does not support, and the 2026-08-31 scout triage had already caught it — but nothing was written here, so it survived into the next session exactly as that triage predicted.** The RUAG session block called **Senior DevOps Engineer C5I** *and* **Data Lakehouse / Senior Data Platform Engineer** "both already shortlisted and materially better fits… where his evidence is Direct rather than Adjacent." Only the first half held. The Data Lakehouse claim was a **title-match prior**: the live JD is **on-prem, MSSQL, Talend, SAP S/4HANA**, and `claims.json` has **0** for all three. RUAG then settled it itself — between the 08-31 and 09-04 scrapes the req was pulled and reposted as **"Senior Data Engineer (MSSQL) mit Data Lakehouse Perspektive"**, with the disqualifier moved into the title; its sibling *Senior Data Analyst & Data Scientist* was likewise reposted as *Senior BI Specialist (Qlik Sense)*. Required line reads *"mehrjährige Erfahrung im Aufbau und Betrieb von **on premise** Data Warehouse Lösungen"* — his stack is AWS cloud-native. Senior DevOps C5I re-verified live on the board 2026-09-04 and stays rank 1. **Systemic lesson: a triage finding that is not written into this log does not exist. Close the loop in the same session that finds it.** | `CLAUDE.md` (RUAG session block); `reports/2026-09-04.triage.md` |
Binary file not shown.
+36
View File
@@ -266,6 +266,42 @@
} }
], ],
"cohort_id": "evidence-first-2026-01" "cohort_id": "evidence-first-2026-01"
},
{
"id": "app-535c5bfb3f94",
"company": "Swisscom (Schweiz) AG",
"role": "Data Engineer - Geo Platform, Bern/Worblaufen (internal, req R-0006447)",
"label": "Swisscom (Schweiz) AG — Data Engineer - Geo Platform, Bern/Worblaufen (internal, req R-0006447)",
"application_date": "2026-09-15",
"fit_class": "no-go",
"evidence_fit": 78.0,
"hard_gate": "fail",
"channel": "moderate",
"outcome": "applied",
"cohort_id": "evidence-first-2026-01",
"job_id": "R-0006447",
"url": null,
"fit_override_reason": "User override 2026-09-15 after seeing the ArcGIS/FME hard gate (required, never used). Internal move with no change to level or conditions; hiring manager Marianne Temerowski encouraged the application.",
"rubric_version": "critique-framework-2026-09-11",
"next_action": "Await response. Interview prep (critique section 7): say plainly that ArcGIS and FME are unused; name the Bosch coordinate systems and how the transformations were done; geographic CRS (WGS84, LV95, datum shifts) is new ground.",
"current_summary": "SUBMITTED 2026-09-15 via the internal Swisscom Workday posting (R-0006447): 2-page English resume (Dennis_Thiessen_Resume.pdf), no cover letter (internal). Evidence Fit 78, hard gate FAIL (ArcGIS/FME) overridden by the user, Document Quality 89, channel Moderate (hiring manager Marianne Temerowski encouraged the application).",
"events": [
{
"type": "open",
"date": "2026-09-15"
},
{
"type": "contact_conversation",
"date": "2026-09-15",
"note": "Contacted hiring manager Marianne Temerowski before applying; she encouraged the application. She signed his Swisscom Zwischenzeugnis (Oct 2025). Whether ArcGIS/FME was discussed is not recorded. First application in the log where the named contact was used."
},
{
"type": "applied",
"date": "2026-09-15",
"note": "SUBMITTED 2026-09-15 via the internal Swisscom Workday posting (R-0006447): 2-page English resume (Dennis_Thiessen_Resume.pdf), no cover letter (internal). Evidence Fit 78, hard gate FAIL (ArcGIS/FME) overridden by the user, Document Quality 89, channel Moderate (hiring manager Marianne Temerowski encouraged the application).",
"outcome": "applied"
}
]
} }
] ]
} }
+36
View File
@@ -648,6 +648,42 @@
"date": null "date": null
} }
] ]
},
{
"id": "app-535c5bfb3f94",
"company": "Swisscom (Schweiz) AG",
"role": "Data Engineer - Geo Platform, Bern/Worblaufen (internal, req R-0006447)",
"label": "Swisscom (Schweiz) AG — Data Engineer - Geo Platform, Bern/Worblaufen (internal, req R-0006447)",
"application_date": "2026-09-15",
"fit_class": "no-go",
"evidence_fit": 78.0,
"hard_gate": "fail",
"channel": "moderate",
"outcome": "applied",
"cohort_id": "evidence-first-2026-01",
"job_id": "R-0006447",
"url": null,
"fit_override_reason": "User override 2026-09-15 after seeing the ArcGIS/FME hard gate (required, never used). Internal move with no change to level or conditions; hiring manager Marianne Temerowski encouraged the application.",
"rubric_version": "critique-framework-2026-09-11",
"next_action": "Await response. Interview prep (critique section 7): say plainly that ArcGIS and FME are unused; name the Bosch coordinate systems and how the transformations were done; geographic CRS (WGS84, LV95, datum shifts) is new ground.",
"current_summary": "SUBMITTED 2026-09-15 via the internal Swisscom Workday posting (R-0006447): 2-page English resume (Dennis_Thiessen_Resume.pdf), no cover letter (internal). Evidence Fit 78, hard gate FAIL (ArcGIS/FME) overridden by the user, Document Quality 89, channel Moderate (hiring manager Marianne Temerowski encouraged the application).",
"events": [
{
"type": "open",
"date": "2026-09-15"
},
{
"type": "contact_conversation",
"date": "2026-09-15",
"note": "Contacted hiring manager Marianne Temerowski before applying; she encouraged the application. She signed his Swisscom Zwischenzeugnis (Oct 2025). Whether ArcGIS/FME was discussed is not recorded. First application in the log where the named contact was used."
},
{
"type": "applied",
"date": "2026-09-15",
"note": "SUBMITTED 2026-09-15 via the internal Swisscom Workday posting (R-0006447): 2-page English resume (Dennis_Thiessen_Resume.pdf), no cover letter (internal). Evidence Fit 78, hard gate FAIL (ArcGIS/FME) overridden by the user, Document Quality 89, channel Moderate (hiring manager Marianne Temerowski encouraged the application).",
"outcome": "applied"
}
]
} }
], ],
"targeting_notes": [ "targeting_notes": [
@@ -0,0 +1,65 @@
View Job Posting Details
08:40
15.09.2026 Page 1 of 3
Data Engineer - Geo Platform
Data Engineer - Geo Platform
Your future starts here
Du arbeitest im Geo‑Umfeld mit Karten, Geodaten und standortbezogenen Informationen und integrierst neue Quellen in unsere Cloud‑Architektur. Als Bindeglied zwischen Fachbereichen und Datenliefernden entwickelst und betreust du robuste Datenprodukte sowie Geo‑Services für Analysen und Anwendungen. Du automatisierst Datenverarbeitung und Migrationen mit Python und stellst die zuverlässige, skalierbare Bereitstellung sicher. Gemeinsam betreiben wir die Swisscom Geo Platform mit Monitoring, Security und Deployments über mehrere Umgebungen.
• Betrieb und Weiterentwicklung der Swisscom Geo Platform • Entwicklung und Betrieb von Geo‑Datenpipelines für Integration und Transformation • Automatisierung von Datenprozessen und Migrationen mit Python • Bereitstellung von Karten‑ und Geodatendiensten für diverse Nutzergruppen • Monitoring, Fehleranalyse und kontinuierliche Verbesserung in Zusammenarbeit mit
Stakeholdern
Deine Skills
• Abschluss (ETH/Uni/FH) in Informatik, Geomatik oder Wirtschaftsinformatik oder gleichwertiger Abschluss
• Mehrjährige Erfahrung im Data Engineering mit Fokus auf Datenpipelines und relationalen Datenmodellen
• Fundierte Praxis mit ArcGIS und FME in der Umsetzung und im Betrieb von Geo‑Workflows
• Sichere Entwicklung mit Python sowie Erfahrung in Automatisierung und Scripting • Strukturiert, eigenverantwortlich und zuverlässig, du dokumentierst Lösungen und
verantwortest deine Themen • Kommunikativ, du erklärst Technik verständlich und pflegst den Austausch mit
Anwenderinnen, Anwendern und Stakeholdern • Teamorientiert, neugierig und lernbereit, du holst aktiv Feedback ein und treibst
gemeinsame Ziele voran • Sehr gutes Deutsch oder sehr gutes Englisch, weitere Landessprachen von Vorteil
Bei uns hast du die Möglichkeit, in einem unserer Offices in der Schweiz oder im Homeoffice zu arbeiten. Dabei kommst du mit agilen Arbeitsmethoden und den neuesten Technologien in Kontakt. Wir bieten eine flexible Arbeitszeitgestaltung, um deinen persönlichen Bedürfnissen gerecht zu werden. Als Mitarbeitende*r von Swisscom kannst du dich auf eine Vielzahl von attraktiven Leistungen freuen, die deine Arbeitserfahrung bereichern werden. Dazu gehören ein angenehmes Arbeitsumfeld, finanzielle Vorteile und spannende Möglichkeiten zur beruflichen Weiterentwicklung. Benefits.
For authorised use only
View Job Posting Details
Is it a match? Apply now.
Discover your possibilities
Any questions?
Here you'll find answers to the most important and frequently asked questions.
Contact person
Femi Hoti Talent Acquisition Manager +41 (76) 4107654
Your homebase
Swisscom (Schweiz) AG
Alte Tiefenaustrasse 6, 3048 Worblaufen
Officevideo_alle_Standorte_2025_V02.mp4
Job Details Job Requisition ID Spotlight Job Remote Type Location
Additional Locations Posting Date Job Family Time Type Job Type
Supervisory Organization
R-0006447 Yes 80-100% Bern Zurich 14.09.2026 - 1 day ago Data Analysis Full time Employees who are subject to the CEC SCS-INI-DNA-DL
08:40
15.09.2026 Page 2 of 3
For authorised use only
Hiring Team Recruiter
View Job Posting Details
Hiring Manager
Femi Hoti Marianne Temerowski
08:40
15.09.2026 Page 3 of 3
For authorised use only
@@ -0,0 +1,143 @@
# Critique — Swisscom (Schweiz) AG, Data Engineer - Geo Platform
**Date:** 2026-09-15 · **Req:** R-0006447 (internal posting) · **Package:** 2-page English resume, no cover letter (user decision: internal application)
**Document reviewed:** `e2e_swisscom_data_engineer_geo_platform_resume.tex` → `.pdf` (2 pages; PDF built 10:25:28, after the last source change at 10:25:16)
**JD:** `JD_swisscom_data_engineer_geo_platform.pdf` / `.txt` — user-supplied PDF export of the live internal Workday posting (15.09.2026 08:40), extracted verbatim. **JD integrity: PASS.**
**Canonical state:** `claims.json` as of 2026-09-15, including BS-8 (geospatial), the SW-1/SW-3/SW-7 confirmations and the ART B2B / ART DPT phase split. Validator PASS.
---
## 1. Fit verdict and hard-gate audit
**Hard gate: FAIL.** Required line *"Fundierte Praxis mit ArcGIS und FME in der Umsetzung und im Betrieb von Geo-Workflows"* — both named tools are user-confirmed never used (2026-09-15). Geo is title-defining and R1/R2/R4 are Adjacent, not Direct.
**Classification: No-go on the gate — overridden by the user 2026-09-15.** The override does not change the classification, and no document edit can remove the gate. This critique therefore does **not** describe the package as framework-recommended for submission. What has changed in practice: the hiring manager, Marianne Temerowski, knows Dennis's work first-hand (she signed his Oct 2025 Zwischenzeugnis) and told him to apply. That lowers the practical risk of the gate a great deal. It does not make ArcGIS or FME evidence exist, and the first technical conversation will test it.
**No unresolved practical constraint:** internal move, same building, level and conditions unchanged by the user's own statement.
## 2. Evidence Fit: 78/100 (unchanged)
| Dimension | Weight | Score | Basis |
|---|---:|---:|---|
| Required qualifications | 35 | 25 | 7 of 8 Direct; the ArcGIS/FME line is the only role-specific technical requirement and it is a Gap |
| Core responsibilities | 25 | 19 | R3 migrations/automation with Python, R5 troubleshooting, R6 cloud sources and deployments Direct; R1 platform operation, R2 geo pipelines (strong via BS-8), R4 map/geo services Adjacent |
| Level and ownership | 15 | 14 | Component and Application Owner history meets "verantwortest deine Themen"; internal move at his level |
| Recency and depth | 10 | 8 | Current ART DPT work carries Python/PySpark pipelines and relational data products; operations/on-call evidence is ART B2B (past); spatial evidence ended 2022 |
| Domain/tool transfer | 10 | 7 | SDO_GEOMETRY and multi-CRS transformation transfer directly; ArcGIS and FME have no substitute claim |
| Practical constraints | 5 | 5 | Same employer and site; German native; no change to level or conditions |
| **Total** | **100** | **78** | Would sit in the Core band absent the gate |
## 3. Document Quality: 89/100
| Dimension | Weight | Score | Assessment |
|---|---:|---:|---|
| Truth and provenance | 25 | **24** | Every bullet traces to a canonical ID with its allowed verbs and scope (claim audit, section 6). The present-tense ownership error of the first build is fixed: ART B2B work is past tense, ART DPT work present. ODP-Flow is used, never authored. Minus one for the summary's "after owning ETL pipelines", which is slightly broader than *Komponentenverantwortung* for specific pipeline components. |
| Information hierarchy | 20 | **19** | Employer bold first, dates on the same line, official internal title and promotion second, unit labels clearly subordinate. Experience starts at **38.4%** of page 1 (F18 review range was 45–55%). All Swisscom and Bosch evidence on page 1. Minus one: the headline carries four segments and runs long. |
| Bullet evidence and impact | 20 | **15** | Specific, scoped and distinctive — B1 (CRS normalization and transformation, SDO_GEOMETRY) is the strongest single line against this JD. But **no quantified outcome anywhere** (every canonical metric is unverified, so this is the correct call) and few bullets say why the work mattered. D2 lists six technologies and reads partly as a stack inventory. |
| Relevance and terminology | 15 | **11** | Strong on pipelines (7), data products (5), AWS (7), relational (3), Python (3), migration (2), security, deployments across environments, documentation, stakeholders, spatial/CRS. **Missing:** "monitoring" (0; the JD names it twice), "platform" (0), and automation appears only in pre-Swisscom bullets (the JD's R3 is "Automatisierung ... mit Python"). ArcGIS and FME cannot honestly appear. The English document against a German JD means German keywords (Geodaten, Karten, Datenpipelines) will not match literally — accepted by user directive; the posting allows English. |
| Skills evidence | 10 | **10** | Five compact lines, every entry canonical and interview-ready; historical skills are grouped with the warehouse/operations line rather than the current AWS line; spatial skills labelled "(Bosch)". |
| Mechanics and readability | 10 | **10** | Validator PASS with 0 advisory warnings (cadence included); 0 overfull/underfull boxes; exactly 2 pages; clean extraction; no clipping or overlap. Page 2 is half empty — acceptable, no filler. |
| **Total** | **100** | **89** | Truth/provenance well above the 8/10 automatic-failure line |
## 4. Channel Strength: **Moderate**
The hiring manager was contacted before submission and encouraged the application — the first time in the log that a published named contact was actually used. Not Strong: there is no separate referral or internal sponsor beyond the hiring-team contact. Her prior knowledge of his work (she signed his Zwischenzeugnis) makes this an unusually good Moderate. Whether ArcGIS/FME was discussed is not recorded.
## 5. Competitive read and reader sequence
**Obvious-fit competitor:** a Geomatik or GIS engineer with years of ArcGIS Enterprise and FME workbench delivery, possibly already near the geo team.
- **Dennis's real advantage:** stronger general data engineering (current AWS data-product migration in Python/PySpark with ODP-Flow; past DWH component ownership with on-call); genuine spatial-data and coordinate-transformation experience; internal context, zero onboarding friction, and a hiring manager who knows his work.
- **Competitor's real advantage:** the two named tools on day one; geographic/geodetic CRS fluency (datums, projections, LV95); map and OGC service delivery.
- **Do not value the bridge as highly as direct evidence:** wafer coordinate systems are real CRS work, but not geodesy.
| Reader | Verdict | Reason |
|---|---|---|
| Parser/ATS (Workday) | Clean extraction; weak literal match on the geo line | ArcGIS, FME and German geo vocabulary absent; mitigated by the hiring-manager channel |
| Recruiter glance (Femi Hoti) | **Forward** | Internal candidate the hiring manager asked to apply; would be Borderline cold because of ArcGIS/FME |
| Hiring manager (Marianne Temerowski) | **Interview** | Already encouraged the application; B1, D2 and P1 map to her geo pipelines, migrations and operations lines |
| Technical reviewer (geo team) | **Maybe** | Credible data engineer; first challenge will be ArcGIS/FME depth, second will be which coordinate systems and how the transformations were done |
## 6. Claim audit
| Claim in document | Canonical ID / evidence | Direct/Adjacent | Safe? | Fix |
|---|---|---|---|---|
| Headline "Data, Analytics & AI Engineer IV" | SWISSCOM `official_title` (Zwischenzeugnis Okt 2025; user 2026-09-15) | Direct | Yes | — |
| Summary "over ten years of software experience" | Visible record from Generali 2015-05 (Capgemini omitted) = 11+ years | Direct | Yes | — |
| Summary "builds relational data products on AWS within the company-wide Data Mesh" | SW-7 (scope: within the mesh; relational confirmed 2026-09-15) | Direct | Yes | — |
| Summary "after owning ETL pipelines into the Teradata data warehouse" | SW-2 (component ownership, ART B2B, past) | Direct | Yes, slightly broad | T3: "owning ETL pipeline components" |
| Summary "worked extensively with geospatial wafer data across coordinate reference systems" | BS-8 (user's words) | Adjacent to JD | Yes | T2-1: consider "spatial" |
| Skills: Python, PySpark, SQL, Bash, Java, C# | skills: production-current / historical-with-context | Direct | Yes | T3: PySpark is a framework, not a language |
| Skills: Glue, Athena, Iceberg, Airflow, relational data modeling, Compass | SW-1, SW-7, skills (Iceberg and relational modelling confirmed 2026-09-15) | Direct | Yes | — |
| Skills: Oracle, Teradata, Kafka, Kubernetes, GitLab CI/CD, Ansible | SW-2, SW-3, BS-6; Kafka/Kubernetes `production-historical` | Direct | Yes — no currency implied | — |
| Skills: Oracle SDO_GEOMETRY, CRS transformation, Spotfire map charts (Bosch) | BS-8, BS-5; skills allowed-with-context | Direct (historical) | Yes | — |
| Certifications: AWS SAA, Data Engineering with AWS, ITIL Foundation | `thiessen_certifications.md` #7, #2, #1 (SAA active to Sep 2027) | Direct | Yes | — |
| D1 Onboard sources, model relational data products, document metadata/lineage in Compass | SW-7 (verbs onboard/model/document; practitioner Compass) | Direct | Yes | — |
| D2 Migrate legacy ETL pipelines to AWS as data products with Python/PySpark, Glue, Iceberg, Athena, Airflow, ODP-Flow; contribute to wider migration | SW-1 + SW-6 (ART DPT, current; ODP-Flow used, not built) | Direct | Yes — scoped by the unit label and "contribute" | T2-4: thin the stack list |
| P1 Owned Fulfillment ETL components Oracle → Teradata; quality, security/compliance, RCA, 2nd/3rd-level, on-call | SW-2 (Zwischenzeugnis; ART B2B, past-tense verbs) | Direct | Yes | — |
| P2 Built/operated Python apps on Kubernetes; GitLab CI/CD across multiple environments | SW-3 (Zwischenzeugnis; multi-env confirmed; ART B2B) | Direct | Yes | T2-2: say "automated" |
| P3 Dashboards and analyses for internal B2B stakeholders; refined backlog with PO | SW-4 + SW-3 backlog scope (Zwischenzeugnis item 8) | Direct | Yes | — |
| B1 Normalized/transformed spatial wafer data between CRSs of fab tools; Oracle SDO_GEOMETRY + Spotfire; performance tuning | BS-8 (user-confirmed 2026-09-15; no datum/projection/EPSG wording) | Adjacent to JD | Yes | T2-1 |
| B2 C# extensions and map-chart visualizations; co-owned Spotfire; co-presented TAF 2022 | BS-5 (TAF article verified 2026-06-15) | Adjacent to JD | Yes — co-ownership and co-presentation preserved | — |
| B3 Technical Application Owner KLA DMS and Spotfire; SLOs, vendors, training, documentation | BS-3 (Arbeitszeugnis; named systems user-confirmed) | Direct | Yes | — |
| B4 Linux servers with version-controlled Ansible from Jenkins/GitLab; credential plugin with keystore caching | BS-6 (no GitOps, no figures) | Direct | Yes | — |
| F1 SCEDAS in C# on MS SQL Server; Jenkins build jobs | FC-1 (Arbeitszeugnis) | Direct | Yes | — |
| V1 Automated test suites as CI/CD quality gates | VZ-2 (Reference Letter) | Direct | Yes | — |
| G1 Introduced BDD via PoC; technical responsibility; trained project members | GN-1 (Arbeitszeugnis) | Direct | Yes | — |
| Absent by design | ArcGIS, FME, QGIS, PostGIS, GeoServer, GDAL (forbidden); Capgemini (excluded); metrics (none verified) | — | Correct | — |
## 7. Fixes
### Tier 1 — truth and fit
- **Document: none.** Validator PASS, and the claim audit found no scope, verb, currency or provenance breach.
- **Fit: the ArcGIS/FME hard gate.** Not fixable in writing and not to be papered over with vocabulary. Prepare the interview answer instead (below).
### Tier 2 — presentation (optional, each evidence-safe)
1. **"geospatial wafer data" → "spatial wafer data"** in the summary and B1, keeping "coordinate reference systems" and SDO_GEOMETRY. A Geomatik reader takes *geospatial* to mean Earth-referenced data; wafer coordinates are not. *Spatial* is exact, is the TAF talk's own word ("Spatial Variability"), claims less than BS-8 allows, and removes the easiest challenge without losing any of the CRS evidence.
2. **P2: add the automation the Zwischenzeugnis records** — e.g. "Built and operated Python applications on Kubernetes and automated their CI/CD in GitLab across multiple environments." SW-3 scope is verbatim "automation of CI/CD processes in GitLab"; it brings "automation" into the Swisscom block, where the JD's R3 wants it.
3. **"Monitoring" is absent (0) although the JD names it twice.** No current canonical monitoring evidence exists for Swisscom; the only honest monitoring evidence is the Bosch ELK/Grafana/Prometheus **PoC** (BS-4), which would cost page-1 space. Recommended action is a **question, not an edit:** did the on-call/RCA work at ART B2B, or the AWS work at ART DPT, include monitoring or alerting, and with which tools? If yes, record it and add a clause; if not, leave it.
4. **D2 stack density:** six technologies in one bullet read as an inventory, and Iceberg, Athena and Airflow are already in the skills block. Option: "…implement them as data products in Python/PySpark on AWS Glue with Swisscom's internal ODP-Flow framework; contribute to the wider company migration." Keep as-is if you want the internal reader to see the full stack in context.
### Tier 3 — nits
- Summary "after owning ETL pipelines" → "after owning ETL pipeline components" (precision to *Komponentenverantwortung*).
- PySpark sits under Languages; it is a framework. Harmless for this reader.
- "PO" is fine internally; spell out "Product Owner" if this document is ever reused externally.
### Interview preparation (from the reader sequence)
- **ArcGIS / FME:** say plainly that neither has been used. Anchor on what transfers: ETL and pipeline design, Python automation, spatial data types, coordinate-system normalization and transformation. Any learning plan must be real — none is recorded, so do not improvise one in the room.
- **Coordinate reference systems:** be ready to name the actual coordinate systems of the fab tools and how the normalization and transformations were implemented. Expect a follow-up on geographic systems (WGS84, LV95, datum shifts), which is new ground and should be said so.
- **Operating a platform (Monitoring, Security, Deployments):** P1 on-call and RCA, P2 multi-environment deployments, B3 SLOs, B4 automation and credential handling.
- **Why move:** more interesting work in a domain he has touched before, internally, with no change in conditions.
## 8. Cover letter
**Decision NO (user, internal application) — not penalized.** The resume stands alone. The one thing a letter would have carried, the ArcGIS/FME gap, was instead covered by talking to the hiring manager directly, which was the stronger choice. If the internal Workday flow asks motivation questions, answer them there rather than writing a letter.
## 9. Mechanical verification
| Check | Result |
|---|---|
| `validate_resume_system.py --document` | PASS, 0 advisory warnings |
| Canonical validator | PASS |
| Compile (MiKTeX pdfTeX) | 0 overfull/underfull boxes; PDF newer than source |
| Page count | 2 |
| `page_metrics.py` | experience starts at 38.4% of page 1 |
| `pdftotext -enc UTF-8` | header → summary → skills → Swisscom (title, unit labels, bullets) → Bosch → earlier roles → education in order; en-dashes and umlauts clean |
| Visual | page 1 inspected after edit round 1; page 2 text verified unchanged |
| Metadata | Author and Title empty; producer MiKTeX |
| Forbidden terms | ArcGIS, FME, QGIS, PostGIS, GeoServer, GDAL, GitOps absent |
**Status:** critique complete. Tier 1: none in the document; hard gate FAIL stands (overridden).
## Addendum — user decisions and post-critique edits (2026-09-15)
| Item | Decision | Result |
|---|---|---|
| Tier 2-1 "geospatial" → "spatial" | Applied | Summary and B1 now say "spatial wafer data"; "geospatial" appears 0 times in the rendered text |
| Tier 2-2 automation in P2 | Applied, narrowed by the user | "deployed through automated GitLab CI/CD pipelines across multiple environments" — he **worked with** the automation and did not build it. `claims.json` SW-3 now forbids claiming the automation, so the edit narrows the claim rather than adding one. |
| Tier 2-3 monitoring | Declined — do not ask further | "Monitoring" stays absent; relevance score unchanged |
| Tier 2-4 D2 stack list | Declined | Unchanged |
| Tier 3 nits | Not applied | — |
**Re-verification after the edits:** validator PASS with 0 advisory warnings; 0 overfull/underfull boxes; 2 pages; experience at 38.4% of page 1; page 1 re-inspected visually. The scores stand: both edits were this critique's own recommendations and neither adds a claim, so the critique is **not stale**.
**Finalization:** submission copy `Dennis_Thiessen_Resume.pdf` (MD5-identical to the build). Recorded in the tracker as `app-535c5bfb3f94`, outcome **open** until the user reports the submission. Per the workflow this package is not described as framework-recommended for submission, because the hard gate fails. Submitting it is the user's own decision, made through the override and backed by the hiring manager's encouragement.
@@ -0,0 +1,85 @@
% Swisscom (Schweiz) AG - Data Engineer - Geo Platform (R-0006447), internal application.
% Audience: Swiss/DACH, written in English (user directive 2026-09-15). English document,
% so no babel[ngerman]. Generated fresh from claims.json + experience files; no historical output used.
% Swisscom is split into its two units (ART DPT current, ART B2B past) WITHOUT unit dates - user decision.
\documentclass{resume}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\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}}
% Keep product names whole: TeX's English patterns broke "Ter-adata".
\hyphenation{Teradata keystore}
\frenchspacing
% Unit label inside one employer entry: an unbulleted line aligned with the employer text.
\newcommand{\unitline}[1]{\item[]\hspace*{-1.25em}{\small\bfseries #1}}
\name{Dennis Thiessen, M.Eng.}
\headline{Data, Analytics \& AI Engineer IV $\vert$ AWS Data Products $\vert$ Pipeline Ownership \& Spatial Data}
\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}}
\begin{document}
\begin{rSection}{Summary}
Data engineer with over ten years of software experience. At Swisscom, builds relational data products on AWS within the company-wide Data Mesh, after owning ETL pipelines into the Teradata data warehouse. At Bosch, worked extensively with spatial wafer data across coordinate reference systems.
\end{rSection}
\begin{rSection}{Technical Skills}
\skillline{Languages}{Python, PySpark, SQL, Bash; Java and C\# (professional, historical)}
\skillline{AWS data products}{Glue, Athena, Iceberg, Airflow, relational data modeling, Atlassian Compass}
\skillline{Warehouse and operations}{Oracle, Teradata, Apache Kafka, Kubernetes, GitLab CI/CD, Ansible}
\skillline{Spatial data (Bosch)}{Oracle SDO\_GEOMETRY, CRS transformation, Spotfire map charts}
\skillline{Certifications}{AWS Solutions Architect -- Associate; Data Engineering with AWS; ITIL Foundation}
\end{rSection}
\begin{rSection}{Professional Experience}
\begin{rSubsection}{Swisscom (Schweiz) AG}{Oct 2023 -- Present}{Data, Analytics \& AI Engineer IV (promoted from III, Apr 2025)}{Bern, Switzerland}
\unitline{ART DPT, Team Offering}
\item Onboard source systems onto Swisscom's company-wide Data Mesh and model their data products as relational models; document metadata and lineage in Atlassian Compass.
\item Migrate legacy ETL pipelines to AWS and implement them as data products with Python/PySpark, AWS Glue, Apache Iceberg, Athena, Airflow and Swisscom's internal ODP-Flow framework; contribute to the wider company migration.
\unitline{ART B2B}
\item Owned the ETL pipeline components that loaded business-critical Fulfillment data from Oracle into the Teradata data warehouse, covering data quality, security and compliance, root-cause analysis, second- and third-level support and on-call duty.
\item Built and operated Python applications on Kubernetes, deployed through automated GitLab CI/CD pipelines across multiple environments.
\item Delivered dashboards and analyses for internal B2B stakeholders; refined the backlog with the PO.
\end{rSubsection}
\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 Normalized and transformed spatial wafer data between the different coordinate reference systems used by fab tools and systems. Worked with that data in Oracle (SDO\_GEOMETRY) and TIBCO Spotfire to locate and analyze wafers, including performance tuning.
\item Built C\# extensions and map-chart visualizations of wafer spatial variability for fab engineers in the co-owned TIBCO Spotfire environment; co-presented the work at TIBCO Analytics Forum 2022.
\item Served as technical Application Owner for the KLA Defect Management System and Spotfire, responsible for SLOs, vendor communication, user training and documentation.
\item Administered and automated the Linux servers behind fab analytics and ML workloads with version-controlled Ansible run from Jenkins/GitLab pipelines; developed a credential plugin that retrieved secrets from a password keystore with local caching.
\end{rSubsection}
\begin{rSubsection}{Fraunhofer CML}{Sep 2018 -- Oct 2019}{Research Software Engineer}{Hamburg, Germany}
\item Developed the SCEDAS crew-scheduling software in C\# on Microsoft SQL Server and set up Jenkins build jobs for its automated deployment.
\end{rSubsection}
\begin{rSubsection}{Vizrt}{Jul 2017 -- May 2018}{Test Automation / DevOps Engineer}{Bergen, Norway}
\item Integrated automated test suites into the CI/CD pipeline as quality gates.
\end{rSubsection}
\begin{rSubsection}{Generali Deutschland Informatik Services GmbH}{May 2015 -- Jun 2017}{IT Consultant}{Hamburg, Germany}
\item Introduced behavior-driven development through a proof of concept, then held technical responsibility for the test automation and trained project members to work with it.
\end{rSubsection}
\end{rSection}
\begin{rSection}{Education}
\compactentry{M.Eng. Computer Aided Engineering}{Apr 2012 -- Oct 2013}
Universität der Bundeswehr München; Software Design \& Engineering.
\compactentry{B.Eng. Information and Telecommunication Technologies}{Oct 2009 -- Oct 2012}
Universität der Bundeswehr München.
\end{rSection}
\end{document}
@@ -0,0 +1,59 @@
\ProvidesClass{resume}[2026/07/27 Evidence-first professional resume]
\LoadClass[11pt,a4paper]{article}
\RequirePackage{enumitem}
\RequirePackage{ifthen}
\RequirePackage{lastpage}
\RequirePackage{parskip}
\RequirePackage{needspace}
\pagestyle{empty}
\setlength{\parindent}{0pt}
\def\@resumename{}
\def\@resumeheadline{}
\def\@resumecontact{}
\newcommand{\name}[1]{\def\@resumename{#1}}
\newcommand{\headline}[1]{\def\@resumeheadline{#1}}
\newcommand{\contactline}[1]{\def\@resumecontact{#1}}
\newcommand{\printresumeheader}{%
{\LARGE\bfseries \@resumename}\par
\vspace{0.15em}
\ifthenelse{\equal{\@resumeheadline}{}}{}{\@resumeheadline\par}
\vspace{0.1em}
{\small \@resumecontact}\par
\vspace{0.45em}
}
\AtBeginDocument{\printresumeheader}
\newenvironment{rSection}[1]{%
\vspace{0.35em}
{\bfseries #1}\par
\vspace{0.1em}\hrule\vspace{0.35em}
}{%
\vspace{0.2em}
}
% Arguments: employer, dates, formal title, location.
\newenvironment{rSubsection}[4]{%
\Needspace{6\baselineskip}%
{\bfseries #1}\hfill{\small #2}\par
{\itshape #3}\hfill{\itshape #4}\par
\vspace{0.1em}
\begin{itemize}[leftmargin=1.25em,label=\textbullet,itemsep=0.18em,topsep=0.15em,parsep=0pt,partopsep=0pt]
}{%
\end{itemize}
\vspace{0.25em}
}
\newcommand{\skillline}[2]{%
\textbf{#1:} #2\par
\vspace{0.08em}
}
\newcommand{\compactentry}[2]{%
\textbf{#1}\hfill #2\par
}
@@ -0,0 +1,171 @@
# Session: Swisscom (Schweiz) AG — Data Engineer - Geo Platform
## JD Integrity
- File/source: `JDs/Swisscom_DE_Geo.pdf` (user-supplied), copied to `JD_swisscom_data_engineer_geo_platform.pdf`; verbatim text in `JD_swisscom_data_engineer_geo_platform.txt` (pdftotext)
- Retrieval method and date: PDF export of the internal Swisscom Workday posting view, stamped 15.09.2026 08:40; saved 2026-09-15
- Verbatim posting: YES
- Posting status: live - posted 14.09.2026, Job Requisition ID **R-0006447**, Spotlight Job
- Job details: Location Bern (homebase Alte Tiefenaustrasse 6, 3048 Worblaufen), additional location Zurich; Remote Type "80-100%" (meaning not stated - do not interpret); Job Family Data Analysis; Full time; Job Type "Employees who are subject to the CEC"; Supervisory Organization SCS-INI-DNA-DL
- Named contacts: Recruiter **Femi Hoti**, Talent Acquisition Manager, +41 (76) 4107654; Hiring Manager **Marianne Temerowski**
- No level, band or seniority is stated. Title is bare "Data Engineer".
## Application Decision
- Audience profile: **Swiss/DACH, written in ENGLISH** (user directive 2026-09-15). Swiss employer, Bern hiring team, internal transfer - so Swiss conventions, not International Tech framing. English document: **no `babel[ngerman]`** (the German-hyphenation rule does not apply; do not re-raise it). No photo. No work-authorization line (internal candidate). **Official internal title** used (internal application).
- Evidence Fit: **78** (re-scored 2026-09-15 after BS-8 was confirmed; first provisional read was ~71)
- Fit class: **No-go on the gate** - a required qualification is a Gap and geo is title-defining with R1/R2/R4 only Adjacent (`application_strategy.md`). The 78 would sit in the Core band absent the gate; the override below does not change this classification.
- Hard gate: **FAIL** - required *"Fundierte Praxis mit ArcGIS und FME in der Umsetzung und im Betrieb von Geo-Workflows"*: user-confirmed 2026-09-15 that neither tool was ever used. The geo *substance* is real evidence (BS-8, BS-5); the two named tools are not.
- **User override: YES, 2026-09-15** - shown the gate, the user replied "plan the resume (but it should be in english)".
- Practical constraint: **RESOLVED** - internal move, user-confirmed 2026-09-15: "nothing changes here" on level and conditions; accepted for more interesting work, minimal friction (same building). External no-lateral-move rule does not apply (recorded in memory `user_comp_bar`).
- Channel Strength: **Moderate** (2026-09-15) - the user contacted hiring manager Marianne Temerowski and **she told him to apply**. Framework: known hiring manager = Moderate; Strong would additionally need a separate referral/internal sponsor. Context: she signed his Swisscom Zwischenzeugnis (20.10.2025) as Leader for Organisations, Data Analytics III, so she knows his work first-hand. Whether ArcGIS/FME came up in that conversation is not recorded.
- Channel plan: done - HM contacted before submitting (first application in the log where the named contact was actually used)
- Named contact published? YES -- Marianne Temerowski (HM) contacted 2026-09-15, encouraged the application; Femi Hoti (recruiter) not contacted
- Decision: **PROCEED (user override)** - package finalized 2026-09-15; submission pending
## Requirements
| # | Requirement | Required/preferred | Direct/Adjacent/Gap/Constraint | Canonical evidence | Gate? |
|---|---|---|---|---|---|
| Q1 | Abschluss (ETH/Uni/FH) Informatik, Geomatik, Wirtschaftsinformatik oder gleichwertig | Required | Direct | EDU-BENG (Information and Telecommunication Technologies), EDU-MENG (Computer Aided Engineering, Software Design & Engineering) | |
| Q2 | Mehrjährige Erfahrung Data Engineering, Fokus Datenpipelines und relationale Datenmodelle | Required | Direct | SW-1 + SW-7 (current, ART DPT: AWS data products, relational models), SW-2 (past, ART B2B: Oracle -> Teradata DWH ETL), BS-2, FC-1 (MS SQL Server) | |
| Q3 | Fundierte Praxis mit **ArcGIS und FME**, Umsetzung und Betrieb von Geo-Workflows | Required | **Gap** for both named tools (user-confirmed); geo-workflow substance Adjacent | BS-8 (Oracle SDO_GEOMETRY, multi-CRS normalization and transformation, performance tuning), BS-5 (Spotfire map charts, TAF 2022). ArcGIS/FME: none | **YES** |
| Q4 | Sichere Entwicklung mit Python, Automatisierung und Scripting | Required | Direct | SW-1/SW-6 (current: Python/PySpark, Glue), SW-3 (past: Python on Kubernetes, worked with automated GitLab CI/CD), BS-6 (Ansible, Linux automation), skills Python, Bash | |
| Q5 | Strukturiert, eigenverantwortlich, dokumentiert, verantwortet Themen | Required | Direct | SW-2 Komponentenverantwortung, SW-7 (documents metadata/lineage in Compass), BS-3 Application Owner incl. documentation | |
| Q6 | Kommunikativ, erklärt Technik, Austausch mit Anwendern und Stakeholdern | Required | Direct | SW-4, BS-3 (vendors, internal customers, training), GN-1 (trained project members) | |
| Q7 | Teamorientiert, neugierig, lernbereit | Required | Direct (soft) | BS-7 supervision; Staff-level guiding | |
| Q8 | Sehr gutes Deutsch oder Englisch | Required | Direct | German native, English fluent | |
| R1 | Betrieb und Weiterentwicklung der Swisscom Geo Platform | Core | Adjacent | Operating function Direct (SW-2 on-call, 2nd/3rd level; SW-3; BS-3); the Geo Platform itself new | |
| R2 | Entwicklung und Betrieb von Geo-Datenpipelines (Integration, Transformation) | Core | Adjacent (strong) | Pipelines Direct (SW-1, SW-2, SW-7 source onboarding); spatial transformation BS-8; FME Gap | |
| R3 | Automatisierung von Datenprozessen und Migrationen mit Python | Core | Direct | SW-1 (current migration in Python/PySpark, Glue, ODP-Flow), SW-3 | |
| R4 | Bereitstellung von Karten- und Geodatendiensten für diverse Nutzergruppen | Core | Adjacent | BS-5 map visualizations for engineers, BS-8, SW-4 dashboards for internal users; published geo services (ArcGIS Enterprise, OGC) Gap | |
| R5 | Monitoring, Fehleranalyse, kontinuierliche Verbesserung mit Stakeholdern | Core | Direct | SW-2 root-cause analysis and on-call, BS-4 monitoring PoC | |
| R6 | (Intro) neue Quellen in Cloud-Architektur integrieren; Monitoring, Security, Deployments über mehrere Umgebungen | Core | Direct | SW-7 source onboarding on AWS (current), SW-3 automated GitLab CI/CD across multiple environments (past, ART B2B) | |
## Evidence Fit
| Dimension | Weight | Score | Basis |
|---|---:|---:|---|
| Required qualifications | 35 | 25 | 7 of 8 Direct; the one Gap is the only role-specific technical line, now with real geo substance behind it |
| Core responsibilities | 25 | 19 | R3, R5, R6 Direct; R1, R2, R4 Adjacent (R2 strong via BS-8) |
| Level and ownership | 15 | 14 | Component/Application Owner scope meets "verantwortest deine Themen"; internal move at his level per user |
| Recency and depth | 10 | 8 | Python/PySpark pipeline and AWS data-product evidence current (ART DPT); operations/on-call evidence past (ART B2B); spatial evidence ends 2022 |
| Domain/tool transfer | 10 | 7 | Spatial data types and CRS transformation transfer directly; ArcGIS and FME are named tools with no substitute claim |
| Practical constraints | 5 | 5 | Same employer, same building, German, no level or conditions change |
| **Total** | 100 | **78** | Hard-gate FAIL overrides the number |
History: provisional ~71 before BS-8 was confirmed. The first read wrongly assumed wafer coordinates carry no CRS; corrected by the user 2026-09-15 (CLAUDE.md KB log). The ART B2B/DPT split moved operations evidence from current to past but did not change the score: the current DPT work still carries Python, pipelines and relational models.
## Resolved Questions (2026-09-15)
1. Oracle `SDO_GEOMETRY`: yes. Multiple coordinate reference systems across tools and systems; normalization and transformation was the biggest pain point, performance tuning the other. -> BS-8 in `claims.json`.
2. ArcGIS, FME, QGIS, PostGIS, GeoServer, GDAL, shapefile/GeoJSON/GeoTIFF, swisstopo: none. -> registered `forbidden` where they are tools.
3. Internal move; nothing changes on level or conditions; accepted for more interesting work.
4. SW-1 migration written in Python as AWS Glue jobs, together with **ODP-Flow** (Swisscom-internal data-product framework) -> `claims.json` SW-1 + new skill `ODP-Flow` (allowed-with-context; he uses it, did not build it).
5. SW-3 GitLab CI/CD deploys across multiple environments -> `claims.json` SW-3.
6. SW-7 data-product modelling is relational (logical and physical) -> `claims.json` SW-7 + new skill `relational data modelling`.
7. B4 choice delegated to Claude -> BS-6 (Linux/Ansible automation).
8. Cover letter: not needed for internal applications (user) -> NO.
9. Official internal title **Data, Analytics & AI Engineer IV**, previously **III** (to the Apr 2025 promotion) -> `claims.json` SWISSCOM `official_title` + `internal_title_history`.
10. Two units: **ART B2B** (first part, PAST: legacy Teradata DWH - SW-2, SW-3 Kubernetes/GitLab CI/CD, SW-4 dashboards, Kafka) and **ART DPT, Team Offering** (CURRENT: AWS data products - AWS, ODP-Flow, PySpark/Python, Glue, Iceberg, Athena, Airflow; SW-1, SW-6, SW-7) -> `claims.json` SWISSCOM `org_history`, phase notes on SW-1/2/3/4/6/7, Kafka and Kubernetes downgraded to `production-historical`, Apache Iceberg added.
11. Switch date: unknown and **not relevant** - never date the two units.
12. Offering domain also covers Fulfillment and Product data; not needed on the document. "ART"/"Art" (SAFe) both fine.
13. Critique Tier 2 (2026-09-15): item 1 **yes** ("spatial" instead of "geospatial"); item 2 **reworded** - he *worked with* automated GitLab CI/CD, did not build the automation -> `claims.json` SW-3 scope + forbidden, `experience_swisscom.md` SW-3 correction, CLAUDE.md log; item 3 (monitoring) **leave out, do not ask further**; item 4 **no change**; no other fixes.
## Competitive Read
- Obvious-fit candidate: Geomatik/GIS engineer with years of ArcGIS Enterprise and FME workbench delivery, likely already near the geo team
- Dennis's advantage: stronger general data engineering (current AWS data products and migration in Python/PySpark; past DWH component ownership with on-call); real spatial-data and CRS-transformation experience (BS-8); internal Swisscom context, zero onboarding friction, and a hiring manager who knows his work and encouraged the application
- Their advantage: the two named tools on day one; geographic/geodetic CRS fluency (LV95); OGC/map-service delivery
- Level/scope comparison: his current scope meets or exceeds the seat
- Likely first challenges: (1) ArcGIS/FME depth - answer honestly, point to spatial SQL and CRS work as the transferable core; (2) geographic CRS specifics (LV95, projections) - his CRS work was on wafer coordinate systems
## Framing Strategy
- Professional identity: data engineer with current AWS data-product work, past pipeline ownership and hands-on spatial-data experience
- Strongest proof points: SW-7, SW-1 (current); SW-2, SW-3 (past); BS-8 + BS-5; BS-3; BS-6
- Honest adjacent bridges: Oracle SDO_GEOMETRY and multi-CRS normalization/transformation of wafer data -> geo-data pipelines; Spotfire map charts for engineers -> map/geodata services for user groups
- Explicit gaps: ArcGIS, FME, geodetic CRS specifics, OGC map services - none appear on the resume in any form
- User directives: **English language**; **no cover letter**; **official internal title**; **Swisscom split into ART DPT / ART B2B without unit dates**; **"spatial", not "geospatial"**; **worked with (not built) automated GitLab CI/CD** (all 2026-09-15)
- **Bundle deviation, stated:** `bundle_data_engineer.md` and `achievement_reframing_guide.md` rate BS-5 LOW ("omit from resume"). For this JD it sits in the Bosch block behind BS-8, per `resume_reference.md` ("within a position, lead with the bullet closest to the target role"). The bundles predate BS-8 and cannot see it.
- **BS-2 dropped deliberately:** it would spend a second Bosch slot on Oracle next to BS-8.
## Resume As Built (final, 2026-09-15, after edit round 2)
**File:** `e2e_swisscom_data_engineer_geo_platform_resume.tex` (source of truth) + compiled `e2e_swisscom_data_engineer_geo_platform_resume.pdf`; submission copy `Dennis_Thiessen_Resume.pdf`. Template `resume_template.tex` + `resume.cls`; fresh content, no historical output used. Local macro `\unitline` renders the two unit labels inside the Swisscom entry.
**Header:** Dennis Thiessen, M.Eng. | `Data, Analytics & AI Engineer IV | AWS Data Products | Pipeline Ownership & Spatial Data` | Bern, Switzerland, email, phone, LinkedIn.
**Summary (3 rendered lines):** data engineer, over ten years of software experience (measured from Generali, May 2015); at Swisscom builds relational data products on AWS within the company-wide Data Mesh, after owning ETL pipelines into the Teradata DWH; at Bosch, spatial wafer data across coordinate reference systems.
**Skills (5 rendered lines):** Languages (Python, PySpark, SQL, Bash; Java and C# historical) / AWS data products (Glue, Athena, Iceberg, Airflow, relational data modeling, Atlassian Compass) / Warehouse and operations (Oracle, Teradata, Apache Kafka, Kubernetes, GitLab CI/CD, Ansible) / Spatial data (Bosch) (Oracle SDO_GEOMETRY, CRS transformation, Spotfire map charts) / Certifications (AWS SAA; Data Engineering with AWS; ITIL Foundation).
**Swisscom (Schweiz) AG | Oct 2023 - Present | Data, Analytics & AI Engineer IV (promoted from III, Apr 2025) | Bern, Switzerland**
| # | Unit | ID | As-built bullet (short form) |
|---|---|---|---|
| D1 | ART DPT, Team Offering | SW-7 | Onboard source systems onto the company-wide Data Mesh; model data products as relational models; document metadata and lineage in Atlassian Compass |
| D2 | ART DPT, Team Offering | SW-1 + SW-6 | Migrate legacy ETL pipelines to AWS and implement them as data products with Python/PySpark, AWS Glue, Apache Iceberg, Athena, Airflow and Swisscom's internal ODP-Flow framework; contribute to the wider company migration |
| P1 | ART B2B | SW-2 | Owned ETL pipeline components Oracle -> Teradata DWH: data quality, security and compliance, RCA, second- and third-level support, on-call |
| P2 | ART B2B | SW-3 | Built and operated Python applications on Kubernetes, deployed through automated GitLab CI/CD pipelines across multiple environments |
| P3 | ART B2B | SW-4 + SW-3 | Delivered dashboards and analyses for internal B2B stakeholders; refined the backlog with the PO |
**Bosch and earlier roles:**
| # | ID | As-built bullet (short form) |
|---|---|---|
| B1 | BS-8 | Normalized and transformed spatial wafer data between the CRSs of fab tools and systems; worked with it in Oracle (SDO_GEOMETRY) and TIBCO Spotfire to locate and analyze wafers, including performance tuning |
| B2 | BS-5 | Built C# extensions and map-chart visualizations of wafer spatial variability in the co-owned Spotfire environment; co-presented at TIBCO Analytics Forum 2022 |
| B3 | BS-3 | Technical Application Owner for KLA DMS and Spotfire: SLOs, vendor communication, user training, documentation |
| B4 | BS-6 | Administered and automated the Linux servers with version-controlled Ansible run from Jenkins/GitLab; developed a credential plugin retrieving keystore secrets with local caching |
| F1 | FC-1 | SCEDAS in C# on Microsoft SQL Server; set up Jenkins build jobs for automated deployment |
| V1 | VZ-2 | Integrated automated test suites into CI/CD as quality gates |
| G1 | GN-1 | Introduced BDD via PoC; technical responsibility for the test automation; trained project members |
**12 bullets.** No metrics (none verified). Capgemini, Bundeswehr, thesis and grades omitted. S3, Redshift and CloudFormation are not on the document: the user's current ART DPT stack list did not name them, and removing a skill makes no claim.
## Edit History
- **2026-09-15, edit round 1 (user feedback).** Classification: **truth/provenance correction** + employer-specific presentation.
- Truth: the first build wrote SW-2 (Teradata component ownership) and SW-3/SW-4 in **present tense** and the summary said "Owns ... Teradata". Those duties belong to ART B2B and are past. Now past tense under an ART B2B label; current work (SW-1, SW-6, SW-7) under ART DPT, Team Offering, in present tense.
- Presentation: official internal title `Data, Analytics & AI Engineer IV (promoted from III, Apr 2025)` in the Swisscom header and headline; "Staff" removed from headline and summary; unit labels without dates; domain names (Fulfillment, Product Analysis) removed from the migration bullet per user.
- Skills regrouped into current AWS data-product stack vs warehouse/operations; PySpark and Iceberg added (current, confirmed); S3, Redshift, CloudFormation dropped from the document.
- Canonical: `claims.json` SWISSCOM title/org history and phase notes; Kafka and Kubernetes `production-historical`; Apache Iceberg added. CLAUDE.md KB log entry added.
- Fit: no change to Evidence Fit 78, hard gate FAIL or classification.
- **2026-09-15, edit round 2 (critique Tier 2, user decisions).** Classification: **fit/framing** + **truth/provenance** (scope).
- Summary and B1: "geospatial wafer data" -> **"spatial wafer data"** (a Geomatik reader takes *geospatial* to mean Earth-referenced). `claims.json` BS-8 records the wording rule.
- P2: "with GitLab CI/CD pipelines deploying across multiple environments" -> **"deployed through automated GitLab CI/CD pipelines across multiple environments"** - user clarified he worked with the automation and did not build it. `claims.json` SW-3 scope + forbidden ("built the CI/CD automation", "designed the CI/CD pipelines"); `experience_swisscom.md` SW-3 overclaiming variants flagged; CLAUDE.md log row extended.
- Tier 2 items 3 (monitoring) and 4 (D2 stack list) declined by the user; no Tier 3 fixes applied.
- Not material to the critique scores: both edits were the critique's own recommendations and narrow claims rather than add them.
## Validation and QA (final, 2026-09-15)
- `validate_resume_system.py --document`: **PASS, 0 advisory warnings**; canonical system validator PASS
- Compile: MiKTeX pdfTeX, **0 overfull/underfull boxes**, **2 pages**; PDF Author/Title empty
- `page_metrics.py`: experience starts at **38.4%** of page 1 (run with MiKTeX's pdftotext on PATH - Git's mingw pdftotext fails on `-bbox`)
- `pdftotext -enc UTF-8`: header, employer/title/date and unit-label order correct; en-dashes and umlauts extract cleanly; "geospatial" 0 occurrences
- Visual inspection: page 1 re-inspected after edit round 2 - clean, both edits rendered, all Swisscom and Bosch evidence on page 1. Page 2 (Fraunhofer, Vizrt, Generali, Education) text verified unchanged
- Submission copy: `Dennis_Thiessen_Resume.pdf` MD5 `cdb32ccac76255163717f7db96fff224`, identical to the build
## Document Quality
- **89/100** (critique 2026-09-15): truth 24/25, hierarchy 19/20, bullet evidence 15/20, relevance 11/15, skills 10/10, mechanics 10/10. See `critique_swisscom_data_engineer_geo_platform.md`. Tier 2 items 1-2 applied afterwards; not re-scored.
## Cover Letter Decision
- YES/NO: **NO**
- Reason: user decision 2026-09-15 - not needed for internal applications. The ArcGIS/FME explanation belongs in the conversation with Marianne Temerowski (already contacted; she encouraged the application).
## Output Files
- Resume: `e2e_swisscom_data_engineer_geo_platform_resume.tex` / `.pdf`
- Submission copy: `Dennis_Thiessen_Resume.pdf`
- Cover letter: intentionally omitted (user decision)
- Critique: `critique_swisscom_data_engineer_geo_platform.md` (2026-09-15)
## Critique Summary
- Date/status: **complete, 2026-09-15**, against the edit-round-1 build; Tier 2 items 1-2 applied afterwards (see Edit History)
- Evidence Fit: **78** - classification **No-go on the gate, overridden by the user**; not described as framework-recommended for submission
- Hard gate: **FAIL** - ArcGIS and FME required, never used
- Document Quality: **89/100**
- Channel Strength: **Moderate** (hiring manager contacted, encouraged the application)
- Tier 1 fixes: **none in the document**; the hard gate is a fit issue, not fixable in writing
- Tier 2 decisions: (1) applied; (2) applied as "worked with automated GitLab CI/CD"; (3) declined; (4) declined
- Tier 3: not applied
## Status
- Fit gate: **FAIL, overridden by user 2026-09-15** (classification unchanged: No-go on the gate)
- Resume: **final** - edit round 2 applied, validated, compiled and inspected 2026-09-15
- Cover letter: NO (user decision)
- Critique: complete 2026-09-15 - Document Quality 89, no Tier 1
- Finalization: **done 2026-09-15** - package files verified, validator re-run, submission copy created, application recorded in the tracker as **`app-535c5bfb3f94`** (outcome **open**, fit class no-go with override reason, Evidence Fit 78, hard gate fail, channel moderate, `contact_conversation` event for the Temerowski call); `current_applications.md` and `application_cohort.json` regenerated
- Application/outcome: **SUBMITTED 2026-09-15** via the internal Swisscom Workday posting R-0006447 (user-reported) - tracker `app-535c5bfb3f94` updated to **applied**
- Next: await response. Interview prep is in the critique, section 7 (ArcGIS/FME plainly unused; Bosch coordinate systems and transformations; geographic CRS as new ground).
+149 -23
View File
@@ -86,7 +86,34 @@
"start": "2025-04", "start": "2025-04",
"end": "present" "end": "present"
} }
] ],
"official_title": "Data, Analytics & AI Engineer IV",
"official_title_source": "Swisscom Zwischenzeugnis Okt 2025 ('Data, Analytics & AI Engineer IV'); user-confirmed 2026-09-15, including that the grade before the Apr 2025 promotion was III. Use the official title on INTERNAL Swisscom applications; display_title ('Staff ...') remains the external rendering.",
"internal_title_history": [
{
"title": "Data, Analytics & AI Engineer III",
"start": "2023-10",
"end": "2025-04"
},
{
"title": "Data, Analytics & AI Engineer IV",
"start": "2025-04",
"end": "present"
}
],
"org_history": [
{
"unit": "ART B2B",
"phase": "first part of the Swisscom tenure - PAST",
"scope": "Legacy Teradata DWH: component ownership of the Fulfillment ETL (SW-2), Python applications on Kubernetes with GitLab CI/CD (SW-3), dashboards and analyses (SW-4), Kafka."
},
{
"unit": "ART DPT, Team Offering",
"phase": "current",
"scope": "Migration and implementation of the new AWS-based data products (SW-1, SW-6, SW-7). Stack, user-confirmed 2026-09-15: AWS, ODP-Flow, PySpark/Python, Glue, Iceberg, Athena, Airflow. The Offering domain also covers Fulfillment and Product data; the user does not want that detail on documents."
}
],
"org_history_note": "User-supplied 2026-09-15. The switch date between the units is NOT recorded and the user ruled it not relevant: never put dates on the two units. Unit names 'ART B2B' and 'ART DPT' (ART is the SAFe term; user-confirmed 2026-09-15 that 'ART' and 'Art' are both acceptable). The Zwischenzeugnis lists duties from both units as one undifferentiated list; it is not evidence that any of them is current."
}, },
{ {
"id": "BOSCH", "id": "BOSCH",
@@ -178,7 +205,7 @@
"source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)", "source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)",
"ownership": "individual within his domains; contributor company-wide" "ownership": "individual within his domains; contributor company-wide"
}, },
"scope": "Migration of legacy ETL pipelines and build-and-operate of cloud-native applications on AMAZON AWS (S3, Glue, Athena, Redshift, Apache Airflow) - verbatim from the Zwischenzeugnis. Primary engineer for pipelines in his owned Fulfillment and Product Analysis domains; contributor to the wider company migration.", "scope": "Migration of legacy ETL pipelines and build-and-operate of cloud-native applications on AMAZON AWS (S3, Glue, Athena, Redshift, Apache Airflow) - verbatim from the Zwischenzeugnis. Primary engineer for pipelines in his owned Fulfillment and Product Analysis domains; contributor to the wider company migration. IMPLEMENTATION, user-confirmed 2026-09-15: the migration and its automation were written in PYTHON as AWS GLUE JOBS, together with ODP-FLOW, Swisscom's internal framework for creating data products. ODP-Flow is Swisscom's framework, not his - he uses it; never claim he built or owns it. PHASE, user-confirmed 2026-09-15: this is CURRENT work at ART DPT, Team Offering, on AWS, ODP-Flow, PySpark/Python, Glue, Iceberg, Athena and Airflow.",
"allowed_verbs": [ "allowed_verbs": [
"migrated", "migrated",
"implemented", "implemented",
@@ -198,12 +225,12 @@
"source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)", "source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)",
"ownership": "component - Komponentenverantwortung, documented" "ownership": "component - Komponentenverantwortung, documented"
}, },
"scope": "Komponentenverantwortung (component ownership) for the ETL pipelines that move business-critical Fulfillment data out of Oracle databases into the TERADATA DATA WAREHOUSE (DWH) and make it available for analysis - verbatim from the Zwischenzeugnis. Includes quality, security, data protection and compliance per Security and Data Governance, root-cause analysis on application problems, and 2nd/3rd-level support plus on-call (Rufbereitschaft).", "scope": "Komponentenverantwortung (component ownership) for the ETL pipelines that move business-critical Fulfillment data out of Oracle databases into the TERADATA DATA WAREHOUSE (DWH) and make it available for analysis - verbatim from the Zwischenzeugnis. Includes quality, security, data protection and compliance per Security and Data Governance, root-cause analysis on application problems, and 2nd/3rd-level support plus on-call (Rufbereitschaft). PHASE, user-confirmed 2026-09-15: this was the legacy DWH at ART B2B, the first part of his Swisscom tenure - it is PAST. Write it in past tense ('Owned', 'operated'); never 'own' or 'owns'.",
"allowed_verbs": [ "allowed_verbs": [
"own", "owned",
"operate", "operated",
"maintain", "maintained",
"serve" "served"
], ],
"metrics": "unverified" "metrics": "unverified"
}, },
@@ -213,11 +240,15 @@
"source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)", "source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)",
"ownership": "individual - implementation and operation" "ownership": "individual - implementation and operation"
}, },
"scope": "Implementation, administration and operation of Python applications on KUBERNETES CLUSTERS, and automation of CI/CD processes in GITLAB - verbatim from the Zwischenzeugnis. Also drives automation of technical processes and workflows, and shapes and prioritises backlog items with the Product Owner.", "scope": "Implementation, administration and operation of Python applications on KUBERNETES CLUSTERS, and automation of CI/CD processes in GITLAB - verbatim from the Zwischenzeugnis. Also drives automation of technical processes and workflows, and shapes and prioritises backlog items with the Product Owner. User-confirmed 2026-09-15: the GitLab CI/CD pipelines deploy across MULTIPLE ENVIRONMENTS (he answered yes to dev/test/prod; exact environment names are not recorded - write 'multiple environments'). PHASE, user-confirmed 2026-09-15: Kubernetes and GitLab CI/CD belonged to the legacy B2B system at ART B2B - PAST; the current ART DPT stack is AWS-native. Write in past tense. SCOPE, user-clarified 2026-09-15: he WORKED WITH automated GitLab CI/CD pipelines - he did not build or design the CI/CD automation. The Zwischenzeugnis wording 'automation of CI/CD processes in GitLab' overstates his part; write 'deployed through automated GitLab CI/CD pipelines'.",
"allowed_verbs": [ "allowed_verbs": [
"build", "built",
"deploy", "deployed",
"operate" "operated"
],
"forbidden": [
"built the CI/CD automation",
"designed the CI/CD pipelines"
], ],
"metrics": "unverified" "metrics": "unverified"
}, },
@@ -227,12 +258,12 @@
"source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)", "source": "Swisscom Zwischenzeugnis, Oktober 2025 (primary document, read 2026-09-11)",
"ownership": "individual" "ownership": "individual"
}, },
"scope": "Deliver data products, dashboards and analyses with internal B2B stakeholders and product owners; not external consulting or strategic-account delivery.", "scope": "Deliver data products, dashboards and analyses with internal B2B stakeholders and product owners; not external consulting or strategic-account delivery. PHASE, user-confirmed 2026-09-15: ART B2B, legacy system - PAST; write in past tense.",
"allowed_verbs": [ "allowed_verbs": [
"deliver", "delivered",
"translate", "translated",
"partner", "partnered",
"support" "supported"
], ],
"forbidden": [ "forbidden": [
"customer-embedded delivery", "customer-embedded delivery",
@@ -265,7 +296,7 @@
"source": "user confirmation 2026-09-11", "source": "user confirmation 2026-09-11",
"ownership": "individual - hands-on use" "ownership": "individual - hands-on use"
}, },
"scope": "Hands-on PySpark use at Swisscom (user-confirmed 2026-09-11).", "scope": "Hands-on PySpark use at Swisscom (user-confirmed 2026-09-11). PHASE, user-confirmed 2026-09-15: current, at ART DPT, Team Offering.",
"allowed_verbs": [ "allowed_verbs": [
"use", "use",
"develop", "develop",
@@ -279,7 +310,7 @@
"source": "unrecorded", "source": "unrecorded",
"ownership": "unrecorded" "ownership": "unrecorded"
}, },
"scope": "Build governed data products and onboard sources within Swisscom's company-wide Data Mesh; never claim ownership or construction of the shared mesh/platform. Atlassian Compass is the metadata/catalogue platform used for data-product metadata and lineage (user-confirmed 2026-07-29); Dennis uses it as a practitioner and does not administer or own the tooling.", "scope": "Build governed data products and onboard sources within Swisscom's company-wide Data Mesh; never claim ownership or construction of the shared mesh/platform. Atlassian Compass is the metadata/catalogue platform used for data-product metadata and lineage (user-confirmed 2026-07-29); Dennis uses it as a practitioner and does not administer or own the tooling. User-confirmed 2026-09-15: the data-product modelling is RELATIONAL - logical and physical table models. Data products are created with ODP-Flow, Swisscom's internal data-product framework (see SW-1); he uses the framework and did not build it. PHASE, user-confirmed 2026-09-15: current work at ART DPT, Team Offering.",
"allowed_verbs": [ "allowed_verbs": [
"build", "build",
"model", "model",
@@ -296,7 +327,10 @@
"own the data platform", "own the data platform",
"own Atlassian Compass", "own Atlassian Compass",
"administered Compass", "administered Compass",
"rolled out Compass" "rolled out Compass",
"developed ODP-Flow",
"own ODP-Flow",
"built the ODP-Flow framework"
], ],
"metrics": "unverified" "metrics": "unverified"
}, },
@@ -657,6 +691,27 @@
"taught a course" "taught a course"
], ],
"metrics": "one Bachelor thesis as Zweitpruefer/supervisor is confirmed; the wider number of students supervised is unverified" "metrics": "one Bachelor thesis as Zweitpruefer/supervisor is confirmed; the wider number of students supervised is unverified"
},
{
"id": "BS-8",
"evidence": {
"source": "user confirmation 2026-09-15; partly corroborated by the TAF 2022 co-presentation 'Understanding Spatial Variability in Semiconductor Products with Spotfire Map Charts' (experience_bosch.md, BS-5)",
"ownership": "individual - hands-on work inside the Bosch data-analysis team"
},
"scope": "Worked extensively with GEOSPATIAL DATA at Bosch (2020-2022) to visualize, locate and analyze wafer data, using TIBCO Spotfire and Oracle databases with Oracle's SDO_GEOMETRY spatial data type (user-confirmed 2026-09-15). The tools and systems involved used DIFFERENT COORDINATE REFERENCE SYSTEMS; normalizing the data and transforming it from one coordinate system to another was, in the user's words, probably the biggest pain point of the work, with PERFORMANCE TUNING the other. Pairs with BS-5, which covers the Spotfire map-chart side and the TAF 2022 talk. CORRECTION RECORDED 2026-09-15: the first assessment of the Swisscom Geo Platform posting asserted that wafer coordinates carry no coordinate reference system; the user corrected it the same day - CRS normalization and transformation was the central difficulty of this work, not an absent one. LIMITS: the coordinate systems were those of fab tools and systems for WAFER data. Geographic and geodetic specifics - datums, ellipsoids, map projections, EPSG codes, Swiss LV95/LV03 - are NOT established; ask before writing any of them. SDO_GEOMETRY is confirmed; specific spatial operators and spatial indexes were not separately confirmed. User-confirmed 2026-09-15 that he has NEVER used ArcGIS, FME, QGIS, PostGIS, GeoServer or GDAL, nor shapefile/GeoJSON/GeoTIFF or swisstopo data. DOCUMENT WORDING, user-approved 2026-09-15: for geo/GIS audiences write SPATIAL wafer data, not geospatial - wafer coordinates are not Earth-referenced, and a Geomatik reader takes 'geospatial' to mean they are.",
"allowed_verbs": [
"worked with",
"normalized",
"transformed",
"analyzed",
"visualized",
"tuned"
],
"forbidden": [
"GIS specialist",
"geodetic datum transformation"
],
"metrics": "none verified; no query-performance or data-volume figures exist"
} }
], ],
"skills": [ "skills": [
@@ -677,14 +732,21 @@
}, },
{ {
"name": "Kafka", "name": "Kafka",
"evidence": "production-current", "evidence": "production-historical",
"output": "allowed" "output": "allowed",
"note": "Downgraded from production-current 2026-09-15: at Swisscom, Kafka belonged to the legacy B2B system (ART B2B), not the current ART DPT AWS stack. Still genuine production evidence - just not current."
}, },
{ {
"name": "Airflow", "name": "Airflow",
"evidence": "production-current", "evidence": "production-current",
"output": "allowed" "output": "allowed"
}, },
{
"name": "Apache Iceberg",
"evidence": "production-current",
"output": "allowed",
"note": "User-confirmed 2026-09-15 as part of the current ART DPT stack (AWS, ODP-Flow, PySpark/Python, Glue, Iceberg, Athena, Airflow). Previously appeared only in experience_swisscom.md and skills_taxonomy.md, not as a canonical skill."
},
{ {
"name": "AWS", "name": "AWS",
"evidence": "production-current", "evidence": "production-current",
@@ -701,10 +763,24 @@
"output": "allowed", "output": "allowed",
"note": "Metadata/catalogue platform for data-product metadata and lineage at Swisscom (user-confirmed 2026-07-29). Practitioner use only — do not claim administration, rollout or ownership. Satisfies 'or similar metadata/catalogue platform' phrasing; is NOT a substitute claim for Purview, Collibra or Alation, which remain unevidenced." "note": "Metadata/catalogue platform for data-product metadata and lineage at Swisscom (user-confirmed 2026-07-29). Practitioner use only — do not claim administration, rollout or ownership. Satisfies 'or similar metadata/catalogue platform' phrasing; is NOT a substitute claim for Purview, Collibra or Alation, which remain unevidenced."
}, },
{
"name": "relational data modelling",
"evidence": "production-current",
"output": "allowed",
"note": "User-confirmed 2026-09-15: logical and physical relational (table) models for data products at Swisscom (SW-7), alongside component ownership of the ETL into the Teradata DWH (SW-2). Previously only implied by SW-7's verb 'model'."
},
{
"name": "ODP-Flow",
"evidence": "production-current",
"output": "allowed-with-context",
"context": "Swisscom-internal framework for creating data products, used in the migration (SW-1) and in data-product work (SW-7).",
"note": "User-supplied 2026-09-15. An internal name that only Swisscom readers recognise - always pair it with the descriptor 'Swisscom's internal data-product framework', and omit it for external employers unless explained. He USES it; never claim he built, designed or owns it."
},
{ {
"name": "Kubernetes", "name": "Kubernetes",
"evidence": "production-current-and-historical", "evidence": "production-historical",
"output": "allowed" "output": "allowed",
"note": "Downgraded from production-current-and-historical 2026-09-15: at Swisscom, Kubernetes (with GitLab CI/CD) belonged to the legacy B2B system at ART B2B, and Bosch ended 2022. The current ART DPT stack is AWS-native. Never present Kubernetes as current work."
}, },
{ {
"name": "Ansible", "name": "Ansible",
@@ -948,6 +1024,56 @@
"output": "allowed-with-context", "output": "allowed-with-context",
"context": "Generali 2015-2017 (GN-3): migrated web services onto a new deployment procedure.", "context": "Generali 2015-2017 (GN-3): migrated web services onto a new deployment procedure.",
"note": "Added 2026-09-11 from the Arbeitszeugnis." "note": "Added 2026-09-11 from the Arbeitszeugnis."
},
{
"name": "Oracle SDO_GEOMETRY",
"evidence": "production-historical",
"output": "allowed-with-context",
"context": "Bosch 2020-2022 (BS-8): Oracle geospatial data type used to visualize, locate and analyze wafer data.",
"note": "User-confirmed 2026-09-15. Previously ABSENT from claims.json - the fifth real skill found missing this way, after Ansible, Linux administration, Bash and Kotlin. Spatial SQL on Oracle does NOT license PostGIS, and it does not license ArcGIS geodatabase work."
},
{
"name": "coordinate system transformation",
"evidence": "production-historical",
"output": "allowed-with-context",
"context": "Bosch 2020-2022 (BS-8): normalizing wafer data across the different coordinate reference systems of fab tools and systems, and transforming between them - the main difficulty of that work.",
"note": "User-confirmed 2026-09-15. Establishes CRS normalization and transformation. Does NOT establish geodetic datums, map projections, EPSG codes or Swiss LV95/LV03 work - ask before writing any of them."
},
{
"name": "ArcGIS",
"evidence": "none",
"output": "forbidden",
"note": "User-confirmed 2026-09-15: never used. Required together with FME in the internal Swisscom posting Data Engineer - Geo Platform (R-0006447): 'Fundierte Praxis mit ArcGIS und FME'. Registered so the document scanner can catch it, for the same reason as Groovy and Snowflake. Spotfire map charts (BS-5) and Oracle SDO_GEOMETRY (BS-8) are the honest spatial evidence and do not substitute for it."
},
{
"name": "FME",
"evidence": "none",
"output": "forbidden",
"note": "User-confirmed 2026-09-15: never used. Required together with ArcGIS in Swisscom R-0006447. General ETL pipeline experience is transferable context, never a claim of FME practice. See ArcGIS."
},
{
"name": "QGIS",
"evidence": "none",
"output": "forbidden",
"note": "User-confirmed 2026-09-15: never used. See ArcGIS."
},
{
"name": "PostGIS",
"evidence": "none",
"output": "forbidden",
"note": "User-confirmed 2026-09-15: never used. Oracle SDO_GEOMETRY (BS-8) is the real spatial-database evidence and does not license PostGIS. See ArcGIS."
},
{
"name": "GeoServer",
"evidence": "none",
"output": "forbidden",
"note": "User-confirmed 2026-09-15: never used. See ArcGIS."
},
{
"name": "GDAL",
"evidence": "none",
"output": "forbidden",
"note": "User-confirmed 2026-09-15: never used. See ArcGIS."
} }
], ],
"global_forbidden_output_patterns": [ "global_forbidden_output_patterns": [
@@ -59,6 +59,8 @@
### Achievement SW-3: Python Applications on Kubernetes + GitLab CI/CD ### Achievement SW-3: Python Applications on Kubernetes + GitLab CI/CD
> **CORRECTED 2026-09-15 (user).** (1) **Phase:** this was the legacy B2B system at **ART B2B**, the first part of the Swisscom tenure - it is **past**; the current ART DPT stack is AWS-native (see `claims.json` SWISSCOM `org_history`). Write it in past tense. (2) **Scope:** he **worked with** automated GitLab CI/CD pipelines; he did not build or design the CI/CD automation. The variants below ("automated the full CI/CD lifecycle", "GitLab-managed quality gates and rollback controls") overstate his part and must not be reused. Safe form: *"Built and operated Python applications on Kubernetes, deployed through automated GitLab CI/CD pipelines across multiple environments."*
**Source:** thiessen_swisscom_zwischenzeugnis.md, thiessen_linkedin_profile.md **Source:** thiessen_swisscom_zwischenzeugnis.md, thiessen_linkedin_profile.md
**User's role:** Primary developer / operator **User's role:** Primary developer / operator
**Status:** Active / ongoing **Status:** Active / ongoing
@@ -31,6 +31,7 @@ Use current outcome and next action below. Imported legacy notes are historical,
| Google FDE GenAI (Zurich) | paused | not recorded | Likely abandon | | Google FDE GenAI (Zurich) | paused | not recorded | Likely abandon |
| Equinor — Manager / AI Architect, Agentic systems (Stavanger/Oslo/Rotvoll/Sandsli; req JR106747) | rejected_no_interview | not recorded | Closed; no pending application action. Read recorded history before reopening. | | Equinor — Manager / AI Architect, Agentic systems (Stavanger/Oslo/Rotvoll/Sandsli; req JR106747) | rejected_no_interview | not recorded | Closed; no pending application action. Read recorded history before reopening. |
| QuantCo Cloud Engineer (Europe/Zürich) | rejected_no_interview | not recorded | Closed; no pending application action. Read recorded history before reopening. | | QuantCo Cloud Engineer (Europe/Zürich) | rejected_no_interview | not recorded | Closed; no pending application action. Read recorded history before reopening. |
| Swisscom (Schweiz) AG — Data Engineer - Geo Platform, Bern/Worblaufen (internal, req R-0006447) | applied | not recorded | Await response. Interview prep (critique section 7): say plainly that ArcGIS and FME are unused; name the Bosch coordinate systems and how the transformations were done; geographic CRS (WGS84, LV95, datum shifts) is new ground. |
## Current targeting notes ## Current targeting notes