CV/index.html

164 lines
16 KiB
HTML
Raw Normal View History

2026-01-20 20:27:41 +00:00
<!DOCTYPE html>
<html lang='en-US' xml:lang='en-US'>
<head> <title>Bastian Gruber - CV</title>
<meta charset='utf-8' />
<meta content='TeX4ht (https://tug.org/tex4ht/)' name='generator' />
<meta content='width=device-width,initial-scale=1' name='viewport' />
2026-01-20 20:57:56 +00:00
<link href='resume.css' rel='stylesheet' type='text/css' />
2026-01-20 20:27:41 +00:00
<meta content='resume.tex' name='src' />
2026-01-20 20:57:56 +00:00
<link href="style.css" rel="stylesheet" type="text/css" /></head><body>
2026-01-20 20:27:41 +00:00
<div class='resume'> <!-- tex4ht:inline --><div class='tabular'> <table class='tabular' id='TBL-1'><colgroup id='TBL-1-1g'><col id='TBL-1-1' /></colgroup><tr id='TBL-1-1-' style='vertical-align:baseline;'><td class='td00' id='TBL-1-1-1' style='white-space:nowrap; text-align:left;'><span class='cmbx-12'>Bastian Gruber</span> </td></tr><tr id='TBL-1-2-' style='vertical-align:baseline;'><td class='td00' id='TBL-1-2-1' style='white-space:nowrap; text-align:left;'>  </td>
</tr><tr id='TBL-1-3-' style='vertical-align:baseline;'><td class='td00' id='TBL-1-3-1' style='white-space:nowrap; text-align:left;'>  </td></tr></table> </div>
<table class='center-addresses'><tr><td class='first-address'><!-- tex4ht:inline --><div class='tabular'> <table class='tabular' id='TBL-2'><colgroup id='TBL-2-1g'><col id='TBL-2-1' /></colgroup><tr id='TBL-2-1-' style='vertical-align:baseline;'><td class='td00' id='TBL-2-1-1' style='white-space:nowrap; text-align:left;'><span class='cmbx-10'>Professional </span> </td>
2026-01-20 20:57:56 +00:00
</tr><tr id='TBL-2-2-' style='vertical-align:baseline;'><td class='td00' id='TBL-2-2-1' style='white-space:nowrap; text-align:left;'>LinkedIn: <a href="https://linkedin.com/in/bastiangruber">linkedin.com/in/bastiangruber</a> </td>
2026-01-20 22:53:54 +00:00
</tr><tr id='TBL-2-3-' style='vertical-align:baseline;'><td class='td00' id='TBL-2-3-1' style='white-space:nowrap; text-align:left;'>Book: <a href="https://rustwebdevelopment.com">rustwebdevelopment.com</a>  </td>
</tr><tr id='TBL-2-4-' style='vertical-align:baseline;'><td class='td00' id='TBL-2-4-1' style='white-space:nowrap; text-align:left;'>E-Mail: <a href="mailto:gruberbastian@me.com">gruberbastian@me.com</a>  </td>
</tr><tr id='TBL-2-5-' style='vertical-align:baseline;'><td class='td00' id='TBL-2-5-1' style='white-space:nowrap; text-align:left;'>Website: <a href="https://bastiangruber.ca">bastiangruber.ca</a>  </td></tr></table> </div></td><td class='second-address'><!-- tex4ht:inline --><div class='tabular'> <table class='tabular' id='TBL-3'><colgroup id='TBL-3-1g'><col id='TBL-3-1' /></colgroup><tr id='TBL-3-1-' style='vertical-align:baseline;'><td class='td00' id='TBL-3-1-1' style='white-space:nowrap; text-align:left;'><span class='cmbx-10'>Code </span> </td>
2026-01-20 20:57:56 +00:00
</tr><tr id='TBL-3-2-' style='vertical-align:baseline;'><td class='td00' id='TBL-3-2-1' style='white-space:nowrap; text-align:left;'>GitHub: <a href="https://github.com/gruberb">github.com/gruberb</a> </td>
2026-01-20 22:53:54 +00:00
</tr><tr id='TBL-3-3-' style='vertical-align:baseline;'><td class='td00' id='TBL-3-3-1' style='white-space:nowrap; text-align:left;'>Git: <a href="https://code.novanexus.ca">code.novanexus.ca</a>  </td></tr></table> </div></td></tr></table>
2026-01-20 20:27:41 +00:00
<h4 class='sectionHead' id='summary'><a id='x1-10000'></a><div class='centerline'> SUMMARY </div></h4><div class='section'>
2026-01-20 22:12:24 +00:00
<!-- l. 55 --><p class='noindent'>Staff Software Engineer and published author (”Rust Web Development” - Manning) with 15+ years building
scalable backend systems. Currently contributing to Firefox at Mozilla, shipping code to hundreds of millions of
users. Founded Rust&amp;Tell Berlin, the largest Rust meetup globally.
2026-01-20 20:27:41 +00:00
</p>
</div><h4 class='sectionHead' id='skills'><a id='x1-20000'></a><div class='centerline'> SKILLS </div></h4><div class='section'>
2026-01-20 22:53:54 +00:00
<!-- l. 68 --><p class='noindent'><span class='cmbx-10'>Languages: </span>Rust, Python, TypeScript, JavaScript, Go <br class='newline' /><span class='cmbx-10'>Frontend: </span>React, Angular, Vue.js <br class='newline' /><span class='cmbx-10'>Backend: </span>Rust (Actix, Warp, Axum), Python (FastAPI), Node.js, Go <br class='newline' /><span class='cmbx-10'>Patterns: </span>REST, GraphQL, gRPC, async Rust, distributed systems (P2P) <br class='newline' /><span class='cmbx-10'>Infrastructure: </span>AWS, Google Cloud, Docker, Kubernetes, CI/CD, Grafana <br class='newline' /><span class='cmbx-10'>Domains: </span>Systems Programming, FFI, Distributed Systems, Web Services, Micro Services, IoT, Blockchain,
Firefox
2026-01-20 20:27:41 +00:00
</p>
</div><h4 class='sectionHead' id='professional-experience'><a id='x1-30000'></a><div class='centerline'> PROFESSIONAL EXPERIENCE </div></h4><div class='section'>
2026-01-20 22:12:24 +00:00
<!-- l. 87 --><p class='noindent'><span class='cmsl-10'>Staff Software Engineer - Full-time </span>February 2026 - Now
<br class='newline' /><span class='cmsl-10'>Senior Software Engineer - Full-time </span>July 2024 - February 2026
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Mozilla</span>, Remote <br class='newline' />Contributing to Firefox (desktop and mobile) shipped to hundreds of millions of users. All work is open source.
2026-01-20 20:27:41 +00:00
</p>
<ul class='itemize1'>
<li class='itemize'>Leading the Image Service project: designing and implementing a cross-team service to provide favicons
and images to Firefox Desktop and mobile
</li>
<li class='itemize'>Contributor to UniFFI, Mozillas multi-language bindings generator for Rust, enabling Rust code to
be called from Kotlin (Android), Swift (iOS), Python, and JavaScript (Desktop)
</li>
<li class='itemize'>Implemented OHTTP (Oblivious HTTP) support in application-services, enabling privacy-preserving
API requests across Firefox Desktop, Android, and iOS
</li>
2026-01-20 22:12:24 +00:00
2026-01-20 22:53:54 +00:00
<li class='itemize'>Building and maintaining the Push notification service for Firefox (async Rust backend handling
2026-01-20 20:27:41 +00:00
millions of concurrent connections)
</li>
<li class='itemize'>Contributing directly to Firefox (mozilla-central): shipping Rust and C++ code to Desktop
</li>
<li class='itemize'>Maintaining Merino, the web service powering Firefox Suggest with Python/FastAPI
</li>
<li class='itemize'>Creating internal Rust learning resources and leading ”Rusty Fridays” sessions for engineers</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 101 --><p class='noindent'><span class='cmsl-10'>Senior Systems Engineer, Team Lead - Full-time </span>April 2023 - June 2024
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Toposware</span>, Remote <br class='newline' />Developing a Peer-to-Peer distributed network, with high throughput and low latency. Part of the core team,
2026-01-20 20:27:41 +00:00
consisting out of 4 people. Implementing the protocol and the services in-house. Debugging of production issues,
implementing the core protocol, re-wrote the CLI, led benchmark initiatives, set up part of the CI/CD flow and
Grafana dashboards. </p>
<ul class='itemize1'>
<li class='itemize'>Increased the throughput of a node 10x
</li>
<li class='itemize'>Re-wrote the CLI to add configuration and robustness, better user guidance
</li>
<li class='itemize'>Led a team of 3 engineers for an internal benchmark project
</li>
<li class='itemize'>Implemented load testing for part of the codebase
</li>
<li class='itemize'>Connected external EVM chains to the core network</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 112 --><p class='noindent'><span class='cmsl-10'>Senior Software Engineer - Full-time </span>August 2022 - February 2023
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Centrifuge</span>, Remote <br class='newline' />Part of the protocol team implementing the DeFi application on top of Substrate. Working in a self-governed
2026-01-20 20:27:41 +00:00
organization, leading the documentation efforts around Rust and the protocol implementation. </p>
<ul class='itemize1'>
<li class='itemize'>Implemented the auto-generation of the online documentation with every PR
</li>
<li class='itemize'>Enabled mutating of money pools in the protocol
</li>
<li class='itemize'>Implemented client facing APIs on top of the money fund pools
2026-01-20 22:53:54 +00:00
2026-01-20 20:27:41 +00:00
</li>
<li class='itemize'>Co-authored RFCs to enhance the protocol</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 122 --><p class='noindent'><span class='cmsl-10'>Author of ”Rust Web Development” </span>October 2020 - December 2022
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Manning Publications</span>, Remote <br class='newline' />Writing the book ”Rust Web Development”. Research, writing and marketing the book in partnership with
2026-01-20 20:27:41 +00:00
Manning. </p>
<ul class='itemize1'>
<li class='itemize'>Published technical book on building web services with Rust
</li>
<li class='itemize'>Created comprehensive tutorials covering async Rust, web frameworks, and deployment
</li>
<li class='itemize'>Book available worldwide through Manning Publications</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 131 --><p class='noindent'><span class='cmsl-10'>Sr. Solutions Architect (Professional Services) - Full-time </span>May 2021 - July 2022
<br class='newline' /><span class='cmsl-10'>Solutions Architect (Professional Services) - Full-time </span>June 2020 - May 2021
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Twilio Inc.</span>, Remote <br class='newline' />Second Solutions Architect hired for the new EMEA Professional Services team. Enabled enterprise customers to
2026-01-20 20:27:41 +00:00
integrate Twilio APIs through architecture design, code reviews, and hands-on implementation support.
</p>
<ul class='itemize1'>
<li class='itemize'>Technical Lead for Fortune 500 client engagements, from architecture to delivery
</li>
<li class='itemize'>Built reusable integration patterns and deliverables adopted across EMEA team
</li>
<li class='itemize'>Established technical review processes and best practices for customer implementations
</li>
<li class='itemize'>Involved in hiring, onboarding, and scaling the Professional Services team</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 142 --><p class='noindent'><span class='cmsl-10'>Systems Engineer - Contract </span>August 2019 - May 2020
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Kraken Digital Currency Exchange</span>, Remote (San Francisco)<br class='newline' />Part of the first Rust team of the company, replacing the core trading engine with Rust. Worked alongside 12 highly
2026-01-20 20:27:41 +00:00
experienced Software Developers from all over the world. Refactor code from PHP to Rust, wrote new features in
Rust in a well-tested highly secure manner. </p>
<ul class='itemize1'>
<li class='itemize'>Re-wrote several PHP services in Rust to increase the throughput 100fold
</li>
<li class='itemize'>Wrote new services in Rust from the ground up
2026-01-20 22:53:54 +00:00
2026-01-20 20:27:41 +00:00
</li>
<li class='itemize'>Cross-communication with different teams and the CTO</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 151 --><p class='noindent'><span class='cmsl-10'>Rust Developer - Freelance </span>March 2019 - July 2019
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Self Employed</span>, Berlin/Toronto <br class='newline' />Took time to deep-dive into Rust, founded the Rust&amp;Tell Berlin MeetUp, contributed to Rust core and created
2026-01-20 20:27:41 +00:00
learning paths for NodeJS developers transitioning to Rust. </p>
<ul class='itemize1'>
<li class='itemize'>Founded and organized the monthly ”Rust &amp; Tell Berlin” meetup (now largest Rust meetup globally)
</li>
<li class='itemize'>Contributed to Rust core and various Rust libraries
</li>
<li class='itemize'>Created Rust learning resources for NodeJS developers</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 160 --><p class='noindent'><span class='cmsl-10'>Sr. Software Engineer - Freelance </span>March 2016 - February 2019
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">OSRAM</span>, <span class="company">Körber Digital</span>, <span class="company">Avenga</span>, <span class="company">ERGO Group</span>, <span class="company">GIATA</span>, <span class="company">PaperHive</span>, <span class="company">Glispa</span> (Berlin) <br class='newline' />Freelance consultant for enterprise clients. Focus on microservices architecture, IoT platforms, and frontend
2026-01-20 20:27:41 +00:00
development. </p>
<ul class='itemize1'>
2026-01-20 22:53:54 +00:00
<li class='itemize'>Built authentication infrastructure for <span class="company">OSRAM</span>s large-scale IoT platform (Node.js, Go, Lua)
2026-01-20 20:27:41 +00:00
</li>
2026-01-20 22:53:54 +00:00
<li class='itemize'>First engineering hire at <span class="company">Körber Digital</span>; established tech stack and real-time data pipelines on AWS
2026-01-20 20:27:41 +00:00
</li>
2026-01-20 22:53:54 +00:00
<li class='itemize'>Tech Lead at <span class="company">Avenga</span>; enabled Scrum processes and refactored codebase into microservices
2026-01-20 20:27:41 +00:00
</li>
2026-01-20 22:53:54 +00:00
<li class='itemize'>Migrated legacy PHP systems to Node.js microservices with Docker at <span class="company">GIATA</span>
2026-01-20 20:27:41 +00:00
</li>
2026-01-20 22:53:54 +00:00
<li class='itemize'>Built in-house analytics dashboards and ad platforms at <span class="company">Glispa</span> with AngularJS
2026-01-20 20:27:41 +00:00
</li>
<li class='itemize'>Mentored teams on Scrum adoption and modern JavaScript practices</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 172 --><p class='noindent'><span class='cmsl-10'>Software Engineer - Full-time </span>August 2015 - February 2016
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">smartB Energy Management GmbH</span>, Berlin <br class='newline' />Worked in a small agile team creating an application for business owners to monitor energy consumption.
2026-01-20 20:27:41 +00:00
</p>
<ul class='itemize1'>
<li class='itemize'>Full-stack development with JavaScript and Python
2026-01-20 22:53:54 +00:00
2026-01-20 20:27:41 +00:00
</li>
<li class='itemize'>Heavy use of pair programming and TDD practices</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 180 --><p class='noindent'><span class='cmsl-10'>Software Engineer - Freelance </span>March 2015 - July 2015
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">blogfoster GmbH</span>, Berlin <br class='newline' />First developer hired to rewrite existing PHP/Backbone application using NodeJS and React. </p>
2026-01-20 20:27:41 +00:00
<ul class='itemize1'>
<li class='itemize'>Built the first version of the ad marketplace for this young startup
</li>
<li class='itemize'>Mapped out architecture with CTO; implemented TDD practices</li></ul>
2026-01-20 22:12:24 +00:00
<!-- l. 188 --><p class='noindent'><span class='cmsl-10'>Frontend Developer - Full-time </span>February 2014 - March 2015
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">Dalia Research</span>, Berlin <br class='newline' />First and sole frontend developer at 8-person startup. </p>
2026-01-20 20:27:41 +00:00
<ul class='itemize1'>
<li class='itemize'>Built survey platform and analytics dashboards in AngularJS
</li>
<li class='itemize'>Translated business requirements into product features across all browsers and devices</li></ul>
</div><h4 class='sectionHead' id='education'><a id='x1-40000'></a><div class='centerline'> EDUCATION </div></h4><div class='section'>
2026-01-20 22:12:24 +00:00
<!-- l. 200 --><p class='noindent'><span class='cmsl-10'>Bachelor of Science, Computer Science </span>September 2010 - February 2014
2026-01-20 22:53:54 +00:00
<br class='newline' /><span class="company">TH Ingolstadt</span><br class='newline' />Scholarship from Allianz Deutschland AG to study Computer Science, fully funded and with trainings in Scrum,
2026-01-20 20:27:41 +00:00
Java, PL/I and mainframe systems on the side.
</p>
</div></div>
</body>
</html>