cv/src/main.typ

206 lines
8 KiB
Typst
Raw Normal View History

#import "lib/main.typ": *
2025-02-19 16:09:34 +01:00
2025-02-28 12:07:28 +01:00
#let info = toml("info.toml")
2025-02-19 16:09:34 +01:00
#show: resume.with(
2025-02-28 12:07:28 +01:00
author: info.personal.name,
location: info.personal.location,
email: info.personal.email,
github: info.personal.github,
linkedin: info.personal.linkedin,
personal-site: info.personal.website,
accent-color: info.layout.accent_color,
font: info.layout.font,
paper: info.layout.paper,
2025-02-19 16:09:34 +01:00
)
== Work Experience
#work(
title: "Senior Software Engineer & Tech Lead",
location: "Hamburg, Germany",
company: "upsquared GmbH",
dates: dates-helper(start-date: "Jun 2024", end-date: "Present"),
)
2025-02-24 11:37:51 +01:00
- Leading Cloud-native Development, Infrastructure & DevOps solutions
2025-02-19 16:09:34 +01:00
- Main technologies: Rust, Nix, Kubernetes, OpenTofu, TypeScript, React, Next.js, MongoDB, GitLab CI, GCP
- Onboarding, mentorship & technical leadership of new team of engineers
2025-02-19 16:09:34 +01:00
#work(
title: "Senior Software Engineer",
location: "Hamburg, Germany",
company: "upsquared GmbH",
dates: dates-helper(start-date: "Oct 2019", end-date: "May 2024"),
2025-02-19 16:09:34 +01:00
)
- Full-Stack Architecture, Development, Infrastructure & DevOps for Cloud-native solutions
- Main technologies: C\#, Rust, Nix, Kubernetes, Terraform / OpenTofu, React, MongoDB, GitLab CI, GCP
- Adopted Nix for reproducible builds & environments used both locally for development and for CI/CD
2025-02-28 12:08:20 +01:00
- Expanded Observability using Sentry and integrations with Rust, C\#, React & Kubernetes
- Adopted Rust into our tech stack due to its strong type system, excellent tooling, safety & performance
- Established reference architecture using Rust, Google Cloud Run, MongoDB Atlas, Nix & GitLab CI with scalability and evolution from monolith to microservices in mind
#work(
title: "Senior Software Engineer",
location: "Hamburg, Germany",
company: "Digital Spring, Dirk Solbach",
dates: dates-helper(start-date: "Apr 2019", end-date: "Sep 2019"),
)
- Full-Stack Architecture, Development, Infrastructure & DevOps for Cloud-native solutions
- Main technologies: C\#, ASP.NET Core, TypeScript, Service Fabric, Cosmos DB, Azure, AWS
2025-02-19 16:09:34 +01:00
#work(
title: "Software Engineer",
location: "Hamburg, Germany",
company: "Digital Spring, Dirk Solbach",
2025-02-19 16:09:34 +01:00
dates: dates-helper(start-date: "Oct 2016", end-date: "Mar 2019"),
)
- Full-Stack Development, Infrastructure & DevOps for Cloud-native solutions
- Main technologies: C\#, ASP.NET Core, TypeScript, Service Fabric, Cosmos DB, Azure, AWS
2025-02-19 16:09:34 +01:00
- Created a microservice-based backend with ASP.NET Core & Azure Cosmos DB
- Implemented frontends in React & Angular for different projects
2025-02-28 12:08:20 +01:00
- Built serverless backends for various client projects with AWS Lambda & Serverless framework
- Migrated Windows containers to Linux containers to improve performance
- Migrated from Azure Service Fabric to Kubernetes for container orchestration
2025-02-19 16:09:34 +01:00
#work(
title: "Software Engineer",
location: "Lüneburg, Germany",
company: "Werum IT Solutions GmbH (now Körber Pharma Software GmbH)",
2025-02-19 16:09:34 +01:00
dates: dates-helper(start-date: "Jun 2015", end-date: "Sep 2016"),
)
- DCS/PCS and ERP interface development with .NET and PL/SQL
#work(
title: "Trainee, Software Engineering",
location: "Lüneburg, Germany",
company: "Werum IT Solutions GmbH (now Körber Pharma Software GmbH)",
2025-02-19 16:09:34 +01:00
dates: dates-helper(start-date: "Aug 2012", end-date: "Jun 2015"),
)
- Process automation (DCS/PCS) interface development with .NET
== Education
#edu(
institution: "University of Colorado Boulder",
location: "Boulder, Colorado, USA",
dates: dates-helper(start-date: "May 2024", end-date: "Present"),
degree: "Master of Science in Computer Science",
)
- Current GPA: 4.0 / 4.0 (19 credits)
2025-02-28 12:08:20 +01:00
- Relevant Courses: Data Structures and Algorithms, Software Architecture for Big Data, Network Systems
2025-02-19 16:09:34 +01:00
#edu(
institution: "Berufsbildende Schulen I Lüneburg",
location: "Lüneburg, Germany",
dates: dates-helper(start-date: "Aug 2012", end-date: "Jun 2015"),
degree: "Computer Science Expert in Software Development",
)
== Projects
#project(
name: "NixOS Config & Homelab",
dates: dates-helper(start-date: "Aug 2019", end-date: "Present"),
url: "codeberg.org/felschr/nixos-config",
)
- Maintaining my personal & work computers as well as a homelab via a declarative NixOS configuration
2025-02-26 00:50:43 +01:00
- I self-host various services for single sign-on (SSO), home automation, git forge, build server & more
2025-02-19 16:09:34 +01:00
#project(
name: "Pheno-Inspect Plant Analyzer Web",
dates: dates-helper(start-date: "Jan 2022", end-date: "Jun 2024"),
url: "youtu.be/JMkj8vP0eJw",
)
- Client project associated with upsquared GmbH
2025-02-28 12:08:20 +01:00
- Developed web-based frontend for Digital Phenotyping platform powered by Computer Vision
2025-02-19 16:09:34 +01:00
- Large drone images can be rendered & annotated efficiently with pixel-perfect accuracy
- Main technologies: Next.js, Redux, MUI, fp-ts, OpenLayers, Rust (WASM), WebGL
#project(
name: "pgp2ssh",
2025-02-21 18:38:45 +01:00
dates: dates-helper(start-date: "Mar 2024", end-date: "Mar 2024"),
url: "github.com/pinpox/pgp2ssh",
)
- Derive private ed25519 SSH key from private PGP key
- This functionality was not implemented in GPG and no other tools existed for this before
- Implemented in Golang and in close collaboration with another member of the open source community
2025-02-19 16:09:34 +01:00
== Volunteering
#project(
name: "NixOS",
role: "Nixpkgs Contributor",
dates: dates-helper(start-date: "Oct 2019", end-date: "Present"),
url: "github.com/NixOS/nixpkgs",
)
2025-02-24 11:37:51 +01:00
- Contribute to the largest open source package repository and one of the most active GitHub projects
2025-02-19 16:09:34 +01:00
- Maintain a few packages & NixOS modules including Tor Browser & Mullvad Browser
- Nixpkgs Maintainer since Dec 2020
- Nixpkgs Committer since Aug 2024 with permissions to merge pull requests
2025-02-19 16:09:34 +01:00
#project(
name: "Letzte Werbung Melder",
role: "Lead Software Engineer",
dates: dates-helper(start-date: "Nov 2018", end-date: "Aug 2019"),
// url: "web.archive.org/web/20191021030141/https://www.letzte-werbung.de/melder",
)
2025-02-28 12:08:20 +01:00
- Allows users to report companies that send mail advertising despite "No advertising" sticker on mailbox
2025-02-19 16:09:34 +01:00
- Main technologies: TypeScript, Node.js, React, AWS Lambda, Serverless framework, DynamoDB
#project(
2025-02-24 11:37:51 +01:00
name: "Stoppt die Plastikpost",
2025-02-19 16:09:34 +01:00
role: "Lead Software Engineer",
dates: dates-helper(start-date: "May 2019", end-date: "Aug 2019"),
// url: "web.archive.org/web/20220710170444/https://www.plastikpost.de/",
)
- Every week, up to 20.7 million issues of "Einkauf Aktuell" land in German mailboxes
- Allowed users to object very easily: over 79 000 objections have been recorded
2025-02-19 16:09:34 +01:00
- Main technologies: TypeScript, Node.js, React, AWS Lambda, Serverless framework, DynamoDB
== Certifications
#certificates(
name: "CompTIA Cloud+",
issuer: "CompTIA",
// url: "www.credly.com/badges/11d97688-587b-4a60-b37e-3cc197755c16",
date: "Feb 2024",
)
#certificates(
name: "Certificate of Cloud Security Knowledge v.4",
issuer: "Cloud Security Alliance",
// url: "www.credly.com/badges/feb95a38-7883-494d-95fa-b8e79093e06d",
date: "Feb 2024",
)
#certificates(
name: "EF SET English Certificate 77/100 (C2 Proficient)",
issuer: "EF SET",
// url: "cert.efset.org/8exL1K",
date: "Nov 2021",
)
2025-02-21 14:33:57 +01:00
#certificates(
name: "Elements of AI: Building AI",
issuer: "University of Helsinki",
// url: "certificates.mooc.fi/validate/wdfg5sj67vs",
date: "Jul 2021",
)
#certificates(
name: "Functional Programming in Haskell",
issuer: "University of Glasgow (via FutureLearn)",
// url: "www.futurelearn.com/certificates/d625jwr",
date: "Jun 2019",
)
2025-02-19 16:09:34 +01:00
== Skills
2025-02-21 14:03:05 +01:00
2025-02-21 14:38:05 +01:00
- *Industry Knowledge*: Software Architecture, Cloud-native Architecture, DevOps, Infrastructure as Code (IaC), Reproducibility, Scalability, Functional Programming, Open Source Development
2025-02-19 16:09:34 +01:00
- *Programming Languages*: Rust, Nix, TypeScript, C\#, HCL, Bash, Nushell
2025-02-28 12:08:20 +01:00
- *Backend*: Podman, gRPC, MongoDB, OpenAPI, GraphQL, buf, tokio, tonic, prost, axum, ASP.NET Core
2025-02-21 14:38:05 +01:00
- *Frontend*: React, Next.js, Redux, emotion, MUI, storybook, webpack, fp-ts
- *Infrastructure & DevOps*: Kubernetes, OpenTofu, GitLab CI, Linux, direnv, treefmt, git-hooks.nix
2025-02-19 16:09:34 +01:00
- *Cloud Providers*: Google Cloud Platform (GCP), Firebase, Amazon Web Services (AWS), Azure
2025-02-21 14:38:05 +01:00
- *Languages*: English (fluent), German (native)