Erik Müller
Personal data
What? | Where |
---|---|
build. | @erikmueller |
share. | @slackoverflow |
think. | @Air2ick |
mail. | e.mueller.mail[at]gmail.com |
I ❤️ functional, declarative and clean programming and its powerful abstractions like pure functions and immutable data.
It makes programs easier to read and reason about. It also reduces cognitive load and brings the bug count down.
My favourite Tech-Stack consists of a React
-based frontend, neatly bundled and transpiled to use the latest ECMA features.
I also love Node.js
bundled with TypeScript
in the backend but prefer the BEAM
with Elixir
or Gleam
for its more functional nature.
Technical Experience
JavaScript & TypeScript experience working professionally since 2013, extending existing architectures and conceptualizing new projects. Besides working with modern language features I utilised popular frameworks and libraries in production such as:
- React(-Native) and redux on client, server, and mobile
- Two popular node.js web frameworks: Express and Fastify
- ORM/ODM wrappers for mongodb (mongoose) and mysql (sequelize)
- Build tools and transpilers: Webpack, Metro, babel, Esbuild
- Several test frameworks and assertion libraries (jest, unexpected, karma, mocha, playwright)
I also created and contributed to several open source projects including:
- eslint (pluggable tool for identifying and reporting on patterns in JavaScript)
- react-stdio (render React.js components on any backend)
- cond-flow (Inspired by Elixir's cond for functional data flow)
- unexpected-immutable (immutable.js assertions for unexpected.js)
- an-old-hype (port of an atom syntax theme for hyper)
Elixir. Hobby alchemist since 2016. Although still being a niche language Elixir helped me in becoming a better programmer and made me rethink established object oriented ways of thinking and programming patterns. A lot of the functional paradigms found in Elixir can be applied to the JavaScript language as well. I was part of the Hamburg.ex user group and created several side projects and playgrounds:
- Luke (server-side rendered react-router with the cowboy webserver)
- JellyShot (blog engine based on Phoenix powered by markdown)
- Edmin (image slider backed by ex_admin CRUD interface)
- JAZ_ex_treme (sorts different heat pump's SCOPs based on flow and return temps & for efficiency)
HTML & CSS. Besides efficient JavaScript I consider writing semantically correct markup and stylesheets the bread and butter of successful web development.
SQL & MongoDB. Experience with running relational and document-oriented databases in production gives me the proficiency to chose the best technology for the job.
Docker & CI/CD. I use Docker a lot. Be it for easy reproducible deployments or faster development workflows. I also did docker multistage builds in the CI environment as well as bundle optimizations like code and route splitting.
Work
When? | What |
---|---|
2021–* | Senior Software Engineer, Fullstack, NewStore GmbH, Berlin |
- Payment context deepdives | |
- Connecting payment terminals and cash drawers to mobile devices (iOS) | |
- Elixir services in production, maintaining Golang and Python services | |
2018–2021 | Software Engineer, Mobile Development, NewStore GmbH, Berlin |
- React-Native development | |
- Monorepo optimisations, project and app restructuring | |
- Clearing technical debt with industry best-practices (and TypeScript) | |
2014–2018 | JavaScript Engineer, ePages GmbH, Hamburg |
- Part of a cross-functional fullstack team | |
- From scratch rewrite of an ecommerce frontend with react & redux |
|
- Backend for frontend implementation with express , sequelize and TypeScript |
|
- Examining applications and conducting technical job interviews | |
2012–2014 | JavaScript Engineer, ePages GmbH, Jena |
- Part of the frontend team | |
- Working with jQuery and the Dojo Toolkit as well as require.js and Backbone |
|
- Building a new asset pipeline with nodejs (0.8) |
|
- Greenfield project based on node.js and express with universal rendering |
|
10/11–3/12 | Intern, ePages GmbH, Jena |
- Evaluating several mobile frameworks as part of the master thesis | |
- Prototypal implementation of a multi platform app for administrating epages6 |
Education
When? | What |
---|---|
2010–2012 | Applied Computer Science, University of Applied Sciences Erfurt |
Thesis: Mobile Cross Platform Development | |
Degree: Master of Science, final grade: 1.8 | |
2007–2011 | Applied Computer Science, University of Applied Sciences Erfurt |
Thesis: Tool for Heuristic Evaluation Online (THEO) | |
Degree: Bachelor of Science, final grade: 2.0 | |
2006–2007 | Media Systems, Bauhaus University Weimar |
1998–2006 | Gustav-Freytag-Gymnasium Gotha |
Thesis: The Venus Transit` | |
Degree: Abitur, final grade: 1.6 |
Language skills
Language | Proficiency |
---|---|
German | Native speaker (first language) |
English | Highly proficient in both spoken and written English (C1) |
French | Basic (3 yrs) |
Interests
- Sports: Volleyball, cycling, snowboarding
- IoT and SFF: Raspberry projects, home automation, soldering, sizing down computers
- Music festivals and concerts