curriculum-vitae

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit a8df2a94b08694c3196d09f696ae923981e70d81
parent 271ea866a20fe457c6b22f4b15f6c982ba27581a
Author: Silas Brack <silasbrack@gmail.com>
Date:   Tue,  7 Apr 2026 00:02:23 +0200

chore: move back to typst

Diffstat:
M.gitignore | 3---
Mflake.nix | 2+-
Ahayagriva.yaml | 10++++++++++
Dmain.tex | 84-------------------------------------------------------------------------------
Amain.typ | 427+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 438 insertions(+), 88 deletions(-)

diff --git a/.gitignore b/.gitignore @@ -1,5 +1,2 @@ -main.aux -main.log -main.out main.pdf diff --git a/flake.nix b/flake.nix @@ -9,7 +9,7 @@ in { devShells = forAllSystems (pkgs: { default = pkgs.mkShell { - buildInputs = [ pkgs.texliveSmall ]; + buildInputs = with pkgs; [ typst ]; }; }); }; diff --git a/hayagriva.yaml b/hayagriva.yaml @@ -0,0 +1,9 @@ +warburg2023bayesian: + type: article + title: Bayesian Metric Learning for Uncertainty Quantification in Image Retrieval + author: + ["Warburg, Frederik", "Miani, Marco", "Brack, Silas", "Hauberg, Søren"] + parent: + - type: proceedings + title: Advances in Neural Information Processing Systems + date: 2023 +\ No newline at end of file diff --git a/main.tex b/main.tex @@ -1,84 +0,0 @@ -\documentclass[a4paper,11pt]{article} - -\usepackage[margin=1cm]{geometry} -\usepackage{hyperref} -\usepackage{fontspec} -\setmainfont{Charter} - -\hypersetup{colorlinks=false,pdfborder={0 0 0}} -\setlength{\parindent}{0pt} -\pagestyle{empty} - -\newcommand{\entry}[4]{% - \parbox[t]{\linewidth}{% - \parbox[t]{12cm}{\textbf{#1}}\hfill\parbox[t]{3.8cm}{\raggedleft\textbf{#2}}\\[0.2em] - \parbox[t]{12cm}{\textit{#3}}\hfill\parbox[t]{3.8cm}{\raggedleft\textit{#4}}}} - -\begin{document} - -\begin{center} - {\huge\textbf{SILAS BRACK}} - - \vspace{1em} - - \textit{Copenhagen, Denmark} \quad - \href{https://silasbrack.com}{silasbrack.com} \quad - \href{https://github.com/silasbrack/}{github.com/silasbrack} \quad - \href{https://linkedin.com/in/silasbrack/}{linkedin.com/in/silasbrack} -\end{center} - -\vspace{1.5em} - -\noindent -\begin{tabular}{@{}p{2.0cm}p{16cm}@{}} -\textbf{\textsc{Experience}} & - \entry{AI Research Engineer}{Nov 2025--Present}{Teton.ai --- AI Research and Computer Vision}{Copenhagen, Denmark} \\[0.3em] - & {\small \textbullet\ Computer vision, transformers, forecasting, embedded machine learning} \\[0.8em] - - & \entry{Machine Learning Engineer}{Sep 2021--Oct 2025}{Saxo Bank A/S --- Department of Predictive Models and AI}{Copenhagen, Denmark} \\[0.3em] - & {\small \textbullet\ Designed, built and deployed a real-time recommendation system serving relevant financial news to clients; to do so, we learn user and content embeddings and perform efficient nearest neighbour retrieval followed by reranking.} \\[0.3em] - & {\small \textbullet\ Built a RAG-based chatbot yielding a 170\% improvement in question-answering accuracy and decreasing the yearly number of manual agent chats by 20k, saving around \$150k in yearly agent costs.} \\[0.3em] - & {\small \textbullet\ Built, trained and deployed an NLP-inspired embeddings model for finding similar stocks. As of February 2025, the tool sits at around 110k monthly interactions.} \\ -\end{tabular} - -\vspace{1.0em} - -\noindent -\begin{tabular}{@{}p{2.0cm}p{16cm}@{}} -\textbf{\textsc{Education}} & - \entry{M.Sc. Mathematical Modelling and Computation}{Sep 2020--Feb 2023}{Technical University of Denmark}{Copenhagen, Denmark} \\[0.3em] - & {\small \textbullet\ Thesis: ``Effortless Bayesian Deep Learning: Tapping Into the Potential of Modern Optimizers,'' with S{\o}ren Hauberg.} \\ -\end{tabular} - -\vspace{1.0em} - -\noindent -\begin{tabular}{@{}p{2.0cm}p{16cm}@{}} -\textbf{\textsc{Projects}} & - \entry{Marginal Likelihood Training of Linearized Laplace Approximations}{Sep 2022--Feb 2023}{Supervised by S{\o}ren Hauberg --- DTU Compute}{Copenhagen, Denmark} \\[0.3em] - & {\small \textbullet\ Developed a novel method for computing the Laplace approximation using only Jacobian-vector products in JAX, implementing posterior sampling (for inference) and the log-determinant (for optimising the marginal likelihood during training) of the Laplace covariance without explicitly instantiating it.} \\[0.8em] - - & \entry{Laplace Approximation in Bayesian Metric Learning}{Apr 2022--May 2023}{Supervised by S{\o}ren Hauberg --- DTU Compute}{Copenhagen, Denmark} \\[0.3em] - & {\small \textbullet\ Developed a method for training Bayesian neural networks in metric learning and demonstrate its effectiveness on small- to large-scale image datasets in yielding well-calibrated uncertainty estimates. We proved that contrastive loss constitutes a valid log-likelihood in spherical space and present a novel decomposition of its Generalized Gauss-Newton (GGN) approximation.} \\[0.3em] - & {\small \textbullet\ Our paper was accepted to NeurIPS 2023 [1] in New Orleans, which I had the fortune of attending.} \\ -\end{tabular} - -\vspace{1.0em} - -\noindent -\begin{tabular}{@{}p{2.0cm}p{16cm}@{}} -\textbf{\textsc{Skills}} & - \textbf{Languages}: Python, SQL, C\# \\[0.3em] - & \textbf{Technology}: Spark, Databricks, Docker, Kubernetes, Airflow, Kafka, Terraform \\[0.3em] - & \textbf{Modelling}: Gradient boosting (LightGBM), deep learning (PyTorch, JAX), Word2Vec, embeddings, LLMs \\ -\end{tabular} - -\vspace{1.0em} - -\noindent -\begin{tabular}{@{}p{2.0cm}p{16cm}@{}} -\textbf{\textsc{Papers}} & - [1] F. Warburg, M. Miani, S. Brack, \& S. Hauberg. ``Bayesian Metric Learning for Uncertainty Quantification in Image Retrieval.'' \textit{NeurIPS 2023}. \\ -\end{tabular} - -\end{document} diff --git a/main.typ b/main.typ @@ -0,0 +1,427 @@ +#set page( + paper: "a4", + margin: ( + x: 1.0cm, + y: 1.0cm, + ), +) +#show heading.where(level: 2): set text(size: 12pt) +#show heading.where(level: 3): set text(size: 12pt) +#set text(size: 12pt, font: "Cooper Hewitt") +#set par( + first-line-indent: 0pt, + spacing: 2.0em, + justify: true, +) +#show link: underline + +#show heading.where(level: 1): set align(center) +#show heading.where(level: 1): set text(size: 20pt) +#show heading.where(level: 1): set block(below: 2em) + +#align(center)[ + #grid(rows: (auto,auto), + row-gutter: 2em, + [#text(size: 16pt)[ + = SILAS BRACK + ]], + [ + #grid( + columns: ( + auto, + auto, + auto, + auto, + ), + gutter: 1em, + [ + _Copenhagen, Denmark_ + ], + [ + #link("https://silasbrack.com")[silasbrack.com] + ], + [ + #link("https://github.com/silasbrack/")[github.com/silasbrack] + ], + [ + #link("https://linkedin.com/in/silasbrack/")[linkedin.com/in/silasbrack] + ], + ) + ], + // [ + // #align( + // center, + // block(width: 10cm)[ + // #set align(left) + // #lorem(24), + // ] + // ) + // ], + ) +] +// #box(clip: true, radius: 2.5cm, width: 2.5cm, height: 2.5cm, image("photo.jpg", height: 2.5cm)) + + +// Demonstrate soft skills +// Highlight biggest contributions +// Quantify contributions +// +// Soft Skills +// - Cooperation +// - Resilience +// - Dependability & reliability +// - Big picture +// - Customer-oriented +// - Interdisciplinary communication (technical & non-technical) +// - Independent + + +#grid( + columns: (1fr, 5fr), + column-gutter: 1em, + [== EXPERIENCE], + [ + #grid( + rows: (auto, auto), + row-gutter: 0.8em, + [ + #grid( + columns: ( + 3.5fr, + 1.5fr, + ), + align(left)[ + *AI Research Engineer* \ + _Teton.ai --- AI Research and Computer Vision_ + ], + align(right)[ + *Nov 2025 -- Present* \ + _Copenhagen, Denmark_ + ], + ) + ], + text(size: 10pt)[ + - Computer vision, transformers, forecasting, embedded machine learning + ] + ) + #grid( + rows: (auto, auto), + row-gutter: 0.8em, + [ + #grid( + columns: ( + 3.5fr, + 1.5fr, + ), + align(left)[ + *Machine Learning Engineer* \ + _Saxo Bank A/S --- Department of Predictive Models and AI_ + ], + align(right)[ + *Sep 2021 -- Oct 2025* \ + // *Apr 2023 -- Present* \ + _Copenhagen, Denmark_ + ], + ) + ], + text(size: 10pt)[ + - Designed, built and deployed a real-time recommendation system serving relevant financial news to clients; to do so, we learn user and content embeddings and perform efficient nearest neighbour retrieval followed by reranking. + - Built a RAG-based chatbot yielding a 170\% improvement in question-answering accuracy and decreasing the yearly number of manual agent chats by 20k, saving around \$150k in yearly agent costs. + - Built, trained and deployed an NLP-inspired embeddings model for finding similar stocks. As of February 2025, the tool sits at around 110k monthly interactions. // This was the first client-facing machine learning tool my team deployed. // [Gensim, Kubernetes, FastAPI, OpenAPI] + ] + ) + ] +) + +#grid( + columns: (1fr, 5fr), + column-gutter: 1em, + [== EDUCATION], + [ + #grid( + rows: (auto, auto), + row-gutter: 0.8em, + [ + #grid( + columns: ( + 3.5fr, + 1.5fr, + ), + align(left)[ + *M.Sc. Mathematical Modelling and Computation* \ + _Technical University of Denmark_ + ], + align(right)[ + *Sep 2020 -- Feb 2023* \ + _Copenhagen, Denmark_ + ], + ) + ], + text(size: 10pt)[ + // - Specialisation in _machine learning and signal processing_. + - Thesis: "Effortless Bayesian Deep Learning: Tapping Into the Potential of Modern Optimizers," with Søren Hauberg. + // - Published a paper to NeurIPS 2023 + ] + ) + // #grid( + // rows: (auto, auto), + // row-gutter: 0.8em, + // [ + // #grid( + // columns: ( + // 3.5fr, + // 1.5fr, + // ), + // align(left)[ + // *B.Sc. General Engineering* \ + // _Technical University of Denmark_ + // ], + // align(right)[ + // *Sep 2017 -- Aug 2020* \ + // _Copenhagen, Denmark_ + // ], + // ) + // ], + // text(size: 10pt)[ + // // - Specialisation in _cyber materials_. + // - Thesis: "Membrane Capacitive Desalination," with Johan Hjelm + // ] + // ) + ] +) + +#grid( + columns: (1fr, 5fr), + column-gutter: 1em, + [== PROJECTS], + [ + #grid( + rows: (auto, auto), + row-gutter: 0.8em, + [ + #grid( + columns: ( + 3.5fr, + 1.5fr, + ), + align(left)[ + * Marginal Likelihood Training of Linearized Laplace Approximations Without Hessian Reductions* \ + _Supervised by Søren Hauberg --- DTU Compute_ + ], + align(right)[ + * Sep 2022 -- Feb 2023* \ + _Copenhagen, Denmark_ + ], + ) + ], + text(size: 10pt)[ + - Developed a novel method for computing the Laplace approximation using only Jacobian-vector products in JAX, implementing posterior sampling (for inference) and the log-determinant (for optimising the marginal likelihood during training) of the Laplace covariance without explicitly instantiating it. + ] + ) + #grid( + rows: (auto, auto), + row-gutter: 0.8em, + [ + #grid( + columns: ( + 3.5fr, + 1.5fr, + ), + align(left)[ + * Bayesian Metric Learning for Uncertainty Quantification in Image Retrieval* \ + _Supervised by Søren Hauberg --- DTU Compute_ + ], + align(right)[ + * Apr 2022 -- May 2023* \ + _Copenhagen, Denmark_ + ], + ) + ], + text(size: 10pt)[ + - Developed a method for training Bayesian neural networks in metric learning and demonstrate its effectiveness on small- to large-scale image datasets in yielding well-calibrated uncertainty estimates. We proved that contrastive loss constitutes a valid log-likelihood in spherical space and present a novel decomposition of its Generalized Gauss-Newton (GGN) approximation. + - Our paper was accepted to NeurIPS 2023 @warburg2023bayesian in New Orleans, which I had the fortune of attending. + ] + ) + ] +) + +#grid( + columns: (1fr, 5fr), + column-gutter: 1em, + [== SKILLS], + [ + #grid(rows: (auto, auto, auto), + row-gutter: 1em, + [*Languages*: Python, SQL, C\#], + [*Technology*: Spark, Databricks, Docker, Kubernetes, Airflow, Kafka, Terraform], + [*Modelling*: Gradient boosting (LightGBM), deep learning (PyTorch, JAX), Word2Vec, embeddings, LLMs] + ) + ] +) + +#grid( + columns: (1fr, 5fr), + column-gutter: 1em, + [== PAPERS], + [ + #bibliography( + "hayagriva.yaml", + title: none, + ) + ] +) + +// == WORK EXPERIENCE +// #line(length: 100%) + +// #grid( +// columns: ( +// 7fr, +// 2fr, +// ), +// align(left)[ +// === Machine Learning Engineer \ +// _Saxo Bank A/S --- Department of Predictive Models and AI_ +// ], +// align(right)[ +// === Apr 2023 -- Aug 2025 \ +// _Copenhagen, Denmark_ +// ], +// ) +// #text(size: 11pt)[ +// // - Developed a proof of concept of a news agent using RAG and MCP for interacting with financial news and other financial data sources. Automatically generated localised market update articles, saving strats team \~5000 hours a year. +// - Designed, built and deployed a real-time recommendation system serving relevant financial news to clients; to do so, we learn user and content embeddings and perform efficient nearest neighbour retrieval followed by reranking. Built data pipelines combining batch and streaming jobs and optimized inference latency. Ran A/B tests to improve model. // [Databricks, SynapseML, Onnx, quantization, two-tower, Postgres, OpenAI, HNSW, A/B testing] +// - Built a RAG-based chatbot yielding a 170\% improvement in question-answering accuracy over an existing solution and decreasing the yearly number of manual agent chats by 20k, saving around \$150k in yearly agent costs. +// - Built, trained and deployed an NLP-inspired embeddings model for finding similar stocks. As of February 2025, the tool sits at around 110k monthly interactions. // This was the first client-facing machine learning tool my team deployed. // [Gensim, Kubernetes, FastAPI, OpenAPI] +// ] + +// // #grid( +// // columns: ( +// // 7fr, +// // 2fr, +// // ), +// // align(left)[ +// // === Software Developer, Student Assistant \ +// // _MAN Energy Solutions --- Department of Master Data and Management_ +// // ], +// // align(right)[ +// // === Apr 2018 -- Sep 2021 \ +// // _Copenhagen, Denmark_ +// // ], +// // ) +// // #text(size: 11pt)[ +// // - Automated data engineering tasks and data pipelines with ETL jobs using SSIS and Microsoft SQL Server, being responsible for 15--20 jobs. +// // - Communicated with data cleansing stakeholders to identify and automate the repetitive workflows which led to the most unnecessary time consumption, saving an estimated 1000 person-hours of manual cleansing work. +// // - Increased fraction of cleansed data from 25% to 50%. Created and maintained over 20 tools for data manipulation and visualisation using C\#. +// // - Participated in business trips to Greece in order to manage the team's relationship with various stakeholders and align on various projects. +// // ] + + +// == PROJECTS +// #line(length: 100%) + +// #grid( +// columns: ( +// 7fr, +// 2fr, +// ), +// align(left)[ +// === Marginal Likelihood Training of Linearized Laplace Approximations Without Hessian Reductions \ +// _Supervised by Søren Hauberg --- DTU Compute_ +// ], +// align(right)[ +// === Sep 2022 -- Feb 2023 \ +// _Copenhagen, Denmark_ +// ], +// ) +// #text(size: 11pt)[ +// - Developed a novel method for computing the Laplace approximation using only Jacobian-vector products in JAX, implementing posterior sampling and the log-determinant of the Laplace covariance without explicitly instantiating it. +// ] + +// #grid( +// columns: ( +// 7fr, +// 2fr, +// ), +// align(left)[ +// === Bayesian Metric Learning for Uncertainty Quantification in Image Retrieval \ +// _Supervised by Søren Hauberg --- DTU Compute_ +// ], +// align(right)[ +// === Apr 2022 -- May 2023 \ +// _Copenhagen, Denmark_ +// ], +// ) +// #text(size: 11pt)[ +// - Developed a method for training Bayesian metric learning and demonstrate its effectiveness on small- to large-scale image datasets in yielding well-calibrated uncertainty estimates. We proved that contrastive loss constitutes a valid log-likelihood in spherical space and present a novel decomposition of its Generalized Gauss-Newton (GGN) approximation. +// - Our paper was accepted to NeurIPS 2023 @warburg2023bayesian in New Orleans, which I had the fortune of attending. +// ] + + +// == EDUCATION +// #line(length: 100%) + +// #grid( +// columns: ( +// 7fr, +// 2fr, +// ), +// align(left)[ +// === M.Sc. Mathematical Modelling and Computation \ +// _Technical University of Denmark_ +// ], +// align(right)[ +// === Sep 2020 -- Feb 2023 \ +// _Copenhagen, Denmark_ +// ], +// ) +// // #text(size: 11pt)[ +// // - Specialisation in _machine learning and signal processing_. +// // - Thesis: "Effortless Bayesian Deep Learning: Tapping Into the Potential of Modern Optimizers," with Søren Hauberg. +// // ] + +// // #grid( +// // columns: (7fr, 2fr), +// // align(left)[ +// // === B.Sc. General Engineering \ +// // _Technical University of Denmark_ +// // ], +// // align(right)[ +// // === Sep 2017 -- Aug 2020 \ +// // _Copenhagen, Denmark_ +// // ], +// // ) +// // #text(size: 11pt)[ +// // - Thesis: "Membrane Capacitive Desalination," with Johan Hjelm +// // ] + + +// == SKILLS +// #line(length: 100%) + +// #grid( +// columns: ( +// auto, +// auto, +// ), +// gutter: 10pt, +// align(left)[ +// *Languages* \ +// *Technology* \ +// *Modelling* +// ], +// align(left)[ +// Python, SQL, C\#, Scala, Rust, Erlang / Elixir / Gleam \ // , Clojure / Lisp +// Spark, Databricks, Docker, Kubernetes, Airflow, Kafka, Terraform \ +// Gradient boosting (LightGBM), neural networks (PyTorch, JAX), Word2Vec, embeddings, LLMs +// ], +// ) + + +// == PUBLICATIONS +// #line(length: 100%) + +// #bibliography( +// "hayagriva.yaml", +// title: none, +// )