diff options
| author | Gustaf Rydholm <gustaf@nexure.io> | 2025-10-21 16:06:43 +0200 |
|---|---|---|
| committer | Gustaf Rydholm <gustaf@nexure.io> | 2025-10-21 16:06:43 +0200 |
| commit | 6a9111525d70265db877dcd9c7e69f776bc79e7b (patch) | |
| tree | 3f525b65e75543845c3c435043dbcdb687dac610 /experience.tex | |
| parent | d6ca483b8ae6ada3fe0192246cc30a7dfac3f667 (diff) | |
update
Diffstat (limited to 'experience.tex')
| -rw-r--r-- | experience.tex | 98 |
1 files changed, 64 insertions, 34 deletions
diff --git a/experience.tex b/experience.tex index 4d6b38b..c4ae483 100644 --- a/experience.tex +++ b/experience.tex @@ -7,57 +7,87 @@ {Stockholm, Sweden} {Aug 2021 -- present} { +Designed and maintained backend services for Appliance Repair Service Platforms using functional programming principles in Kotlin, supporting Sweden/NA launches and EU expansion. +\vspace{0.25em} \begin{itemize}[topsep=0pt,parsep=0pt,partopsep=0pt,leftmargin=10pt,labelwidth=6pt,labelsep=4pt] - \item Develop and maintain microservices for payments and subscriptions. - \item Take part in architectural design discussions. - \item Participate in the code review process. - \item Contribute to the infrastructure with updates to k8s resources and AWS resource management via Terraform. - \item Monitor logs for bugs in different environments, e.g. staging and production. + \item \textbf{Functional Architecture}: Implemented immutable data models and \textbf{railway-oriented} error handling in Kotlin, mirroring Haskell Either monad and patterns. + \item Event-Driven Systems: Built audit trails and transaction synchronization scripts for insurance processing (bordereau), handling 10K+ daily events – directly applicable to event sourcing. + \item Cloud-Native Infrastructure: Deployed Kubernetes services on EKS using Helm/Terraform, managing stateful PostgreSQL workloads and AWS data services (SQS/SNS). + \item Data Integrity: Optimized complex SQL queries for PostgreSQL and resolved cross-database inconsistencies. + \item Security and Auth: Engineered JWT validation libraries and permission APIs, securing microservices with Auth0. + \item \textbf{Tech Stack}: Kotlin (functional paradigms) \textbullet\ PostgreSQL \textbullet\ Kubernetes/EKS \textbullet\ AWS \textbullet\ Terraform \textbullet\ Event-Driven Architecture \textbullet\ Auth0 \textbullet\ Datadog \end{itemize} -\vspace{0.5em} -Keywords: Microservices, Kubernetes, Infrastructure, Helm, CI/CD, Kotlin, Spring, AWS, Terraform -\vspace{0.5em} } -\ruler -\company{Machine Learning Engineer (Cyber Security)} -{Saab} +% \company{Software Engineer} +% {Nexure/Electrolux AB} +% {Stockholm, Sweden} +% {Aug 2021 -- present} +% { +% Designed and maintained backend services for Appliance Repair Service Platforms using functional programming principles in Kotlin, supporting Sweden/NA launches and EU expansion. +% \vspace{0.25em} +% \begin{itemize}[topsep=0pt,parsep=0pt,partopsep=0pt,leftmargin=10pt,labelwidth=6pt,labelsep=4pt] +% \item Developed \textbf{subscriptions engine} and \textbf{user management service} using \textbf{Kotlin} and \textbf{Ktor}, enabling features like recurring payments and user account management. +% \item Contributed to \textbf{Auth0 migration} of users from legacy to new platform, ensuring seamless transitions without user intervention. +% \item Developed \textbf{synchronization scripts} to update \textbf{APIs}, roles, and permissions in \textbf{Auth0}, ensuring consistency across dev, staging, and prod environments. +% \item Introduced \textbf{type library} for shared business logic across \textbf{microservices}, enhancing code consistency and maintainability. +% \item Built \textbf{JWT deserialization} library and \textbf{APIs} for permission-based checks on \textbf{HTTP} and \textbf{WebSocket} endpoints, securing all public-facing services. +% \item Introduced \textbf{railway-oriented} and \textbf{workflow-oriented programming}, improving error handling and process clarity in \textbf{microservices}. +% \item Supported two in-house platform launches in Sweden and North America for \textbf{Appliance Repair Service} features, with ongoing EU expansion. +% \item Contributed to \textbf{infrastructure} via \textbf{Terraform} for \textbf{AWS} resources (RDS, SNS, SQS). +% \item Enhanced legacy platform with \textbf{Appliance Repair Service} features, including bordereau for insurance transactions, +% tax calculation updates, and cross-database record corrections, improving system reliability. +% \item Tech stack: \textbf{Kotlin} (Ktor), \textbf{Kubernetes}, \textbf{PostgreSQL}, \textbf{MongoDB}, \textbf{Helm}, \textbf{Terraform}, \textbf{AWS}, \textbf{CI/CD}, \textbf{WebSocket}, \textbf{Auth0}, \textbf{DataDog}. +% \end{itemize} +% } + +\company{Machine Learning Engineer (Cybersecurity)} +{Saab AB} {Stockholm, Sweden} {Aug 2020 -- Aug 2021} { \begin{itemize}[topsep=0pt,parsep=0pt,partopsep=0pt,leftmargin=10pt,labelwidth=6pt,labelsep=4pt] - \item Created data mining pipelines for extracting, cleaning, and creating datasets for machine learning models, i.e. train/test sets. - \item Was a driving force in making the system more asynchronous using message passing between microservices, by deploying and maintaining a Kafka instance. This improve the architecture by allowing multiple services to subscribe to incoming sensor data and process the information, instead of fetching the data from databases in batches. - \item Developed a modular pipeline for training and evaluating deep learning models with different architectures and/or losses. Automatic extraction of the best model based on user defined metric, ready for serving. - \item Built and deployed deep learning models for multi-modal trajectory predictions in production. - \item Took initiative and deployed and maintained a private Python Package Index (PyPI) for all developers. Greatly improving the development workflow, e.g. forcing versioning, and reducing/eliminating cross dependencies between on-premise developed Python packages. - \item Developed a graph algorithm for sensor fusion. Deployed it as a microservice listing to incoming sensor data. This enabled more complex pattern analysis in downstream services. - \item Reduced the docker image size of the Python microservices from ~2 GB to ~73 MB by utilizing multistage builds and alpine base images. - \item Built pipelines for CI/CD and packages deployment in Tekton. - \item With my docker images and pipelines we where able to reduce the average build times from ~10-30 minutes down to seconds, mostly thanks to improved caching capabilities. + \item \textbf{Event-Driven Architecture}: Architected \textbf{Kafka-driven microservices} for sensor data ingestion and processing, replacing batch-based database fetching and improving system responsiveness. + \item \textbf{Automated Model Deployment}: Developed modular Python pipelines for training and evaluating deep learning models, enabling \textbf{automated selection} of optimal models to production. This system streamlined the transition from research to deployment. + \item \textbf{Cloud-Native Optimization}: Reduced Docker image sizes from 2GB to 73MB using multistage builds and Alpine Linux. This improved CI/CD pipeline efficiency, slashing average build times from 10–30 minutes to under 10 seconds with \textbf{Tekton}. + \item \textbf{Distributed Systems}: Engineered a \textbf{graph-based sensor fusion microservice} to correlate data across sensors, enhancing complex pattern analysis for anomaly/threat detection. + \item \textbf{DevOps Leadership}: Spearheaded development tooling practices, deploying and maintaining a private PyPI server to enforce versioning and resolve dependency conflicts, improving team productivity. + \item \textbf{Tech Stack}: Python, Kafka, Kubernetes, PostgreSQL, Redis, TensorFlow, Tekton, Docker. \end{itemize} -\vspace{0.5em} -Keywords: Deep Learning, Python, Microservices, Kubernetes, Infrastructure, Helm, CI/CD -\vspace{0.5em} } -\ruler -\company{Machine Learning Engineer (Electronic Warfare)} -{Saab} +\company{Machine Learning Engineer (Surveillance)} +{Saab AB} {Stockholm, Sweden} {Aug 2018 -- Aug 2020} { \begin{itemize}[topsep=0pt,parsep=0pt,partopsep=0pt,leftmargin=10pt,labelwidth=6pt,labelsep=4pt] - \item Built simulation software for generating realistic signal environments with both radar and/or communication signals. Implemented the most common signal encoding for communications, as well as basic to SOTA radar modulations. This enabled the team to develop and evaluate different machine learning models and ideas. - \item Researched machine learning models in different stages of the radar warning receiver, with regards to compute and data limitations. - \item Held in several presentations of machine learning papers in a company reading group. - \item Shared the knowledge of implementing and using machine learning to multiple business areas within Saab. + \item \textbf{Signal Processing}: Built simulation software for realistic radar/communication signal environments, enabling training and evaluating machine learning models for electronic warfare applications. + \item \textbf{Algorithm Research}: Researched and prototyped multiple stages of the radar warning receiver with machine learning models, focusing on improving signal classification (communication vs radar) and source grouping. + \item \textbf{Tech stack}: Python, VHDL, Signal Processing. \end{itemize} -\vspace{0.5em} -Keywords: Deep Learning, Signal Processing, Python, VHDL -\vspace{0.5em} } -\ruler + +% \company{Machine Learning Engineer} +% {Saab AB} +% {Stockholm, Sweden} +% {Aug 2018 -- Aug 2021} +% { +% Developed machine learning solutions for defense systems, creating \textbf{data pipelines}, \textbf{machine learning models}, \textbf{microservices}, and \textbf{CI/CD workflows} for cybersecurity and electronic warfare applications. +% \vspace{0.25em} +% \begin{itemize}[topsep=0pt,parsep=0pt,partopsep=0pt,leftmargin=10pt,labelwidth=6pt,labelsep=4pt] +% \item Built \textbf{Python}-based \textbf{data pipelines}, automating dataset preprocessing for machine learning. +% \item Architected \textbf{asynchronous microservices} with \textbf{Kafka}, enabling continuous sensor data subscription and processing across services, improving system responsiveness over batch-based database fetching. +% \item Designed modular \textbf{PyTorch pipelines} for \textbf{deep learning} model training and evaluation, automating best-model selection for production deployment of trajectory prediction models. +% \item Implemented trajectory prediction models with \textbf{LSTM} and \textbf{transformer} based architectures for anomaly detection. +% \item Deployed a private \textbf{PyPI server}, enforcing versioning and resolving dependency conflicts, improving development experience for the entire team. +% \item Developed a \textbf{graph-based} \textbf{sensor fusion} microservice, enhancing complex pattern analysis for cybersecurity applications. +% \item Optimized \textbf{Docker images} from 2GB to 73MB using \textbf{multistage builds} and Alpine, reducing CI/CD build times from 10--30 minutes to under 10 seconds with \textbf{Tekton}. +% \item Researched replacing different stages of the radar warning receiver with machine learning models, enhancing classification of communication vs radar signals, improving detection of Low Probability of Intercept radar pulses. +% \item Tech stack: \textbf{Python} (Pandas, PyTorch, FastAPI), \textbf{Kafka}, \textbf{Redis}, \textbf{PostgreSQL}, \textbf{ArangoDB}, \textbf{Kubernetes}, \textbf{Helm}, \textbf{Docker}, \textbf{Tekton}, \textbf{VHDL}. +% \end{itemize} +% } + %\company{Master's Thesis} %{Ericsson AB} |