#import "@preview/basic-resume:0.2.3": * #let name = "Felix Schröter" #let location = "Lüneburg, Germany" #let email = "dev@felschr.com" #let github = "github.com/felschr" #let linkedin = "linkedin.com/in/schroeter" #let personal-site = "felschr.com" #show: resume.with( author: name, location: location, email: email, github: github, linkedin: linkedin, personal-site: personal-site, accent-color: "#26428b", font: "New Computer Modern", paper: "a4", author-position: left, personal-info-position: left, ) == 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"), ) - Technical Lead for Cloud-native Development, Infrastructure & DevOps solutions - Main technologies: Rust, Nix, Kubernetes, OpenTofu, TypeScript, React, Next.js, MongoDB, GitLab CI, GCP - Onboarding, mentorship & technical leadership of new team of engineers #work( title: "Senior Software Engineer", location: "Hamburg, Germany", company: "upsquared GmbH", dates: dates-helper(start-date: "Oct 2019", end-date: "May 2024"), ) - 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 - Expanded Observability using Sentry and integrations with Rust, C\#, React & Google Kubernetes Engine (GKE) - Adopted Rust as core part of 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 #work( title: "Software Engineer", location: "Hamburg, Germany", company: "Digital Spring, Dirk Solbach", 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 - Created a microservice-based backend with ASP.NET Core & Azure Cosmos DB - Implemented frontends in React & Angular for different projects - Built serverless backends for various client projects with AWS Lambda, DynamoDB & Serverless framework - Migrated Windows containers to Linux containers to improve performance - Migrated from Azure Service Fabric to Kubernetes for container orchestration #work( title: "Software Engineer", location: "Lüneburg, Germany", company: "Werum IT Solutions GmbH (now Körber Pharma Software GmbH)", 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)", 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", ) - Relevant Coursework: Data Structures and Algorithms, Network Systems, Software Architecture for Big Data #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 - My homelab hosts services from home automation to media servers & more #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 - Developed a web-based frontend for Pheno-Inspect's Digital Phenotyping platform powered by Computer Vision - 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", dates: dates-helper(start-date: "Jan 2022", end-date: "Jun 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 == Volunteering #project( name: "NixOS", role: "Nixpkgs Contributor", dates: dates-helper(start-date: "Oct 2019", end-date: "Present"), url: "github.com/NixOS/nixpkgs", ) - Contribute to the largest open source package repository Nixpkgs, which is among the most active GitHub projects - 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 #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", ) - A web app where users can report companies that continue to send mail advertising despite the "No advertising please" sticker on their mailbox - Main technologies: TypeScript, Node.js, React, AWS Lambda, Serverless framework, DynamoDB #project( name: "Plastikpost", 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 70 000 objections have been recorded - 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", ) #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", ) == Skills - *Industry Knowledge*: Software Architecture, Cloud-native Architecture, DevOps, Infrastructure as Code (IaC), Reproducibility, Scalability, Functional Programming, Open Source Development - *Programming Languages*: Rust, Nix, TypeScript, C\#, HCL, Bash, Nushell - *Backend*: Podman, Docker, gRPC, MongoDB, OpenAPI, GraphQL, buf, tokio, tonic, prost, axum, ASP.NET Core - *Frontend*: React, Next.js, Redux, emotion, MUI, storybook, webpack, fp-ts - *Infrastructure & DevOps*: Kubernetes, OpenTofu, GitLab CI, Linux, direnv, treefmt, git-hooks.nix - *Cloud Providers*: Google Cloud Platform (GCP), Firebase, Amazon Web Services (AWS), Azure - *Languages*: English (fluent), German (native)