Resume

Curriculum Vitae

  • Address: Anselm Helbig, Kleibersteig 11, 14621 Schönwalde-Glien
  • Phone: +49 178 3466577
  • EMail: anselm@mnemonikk.org
  • WWW: https://mnemonikk.org/
  • Date of birth: Oct 27th 1973
  • Place of birth: Wilhelmshaven
  • Nationality: Deutsch

Manifesto

I care about writing good code and help others doing it. Good code does the job and is also easy to understand, test and maintain; it’s also easy to delete, eventually. I care about writing focused, meaningful tests. Good tests expose problems where they occur. They give us the confidence in our code, and they’re fast, too. I care about finding good abstractions, using appropriate means from the object-oriented and functional toolboxes. I care about SOLID, YAGNI, DRY and clean code, I’m careful to avoid yak shaving and am aware of code and testing smells. I care about good naming.

I’m pragmatic and want to get things done. I know that perfect is the enemy of the good. I know that it’s often best not to write custom code. In the same vein, too much testing can do more harm than good. I care about the business domain, because code needs a purpose. I believe that programming is an activity by humans for humans.

I care about feedback and shortening feedback cycles. This means that tests and deployments need to be fast, that monitoring needs to be immediate. This means that features need to be small but meaningful and the customer or internal stakeholder needs to be closely involved. I believe in the usefulness of pairing. I believe that pairing works for testers, designers and business analysts, too.

I believe that taking responsibility is not about accepting blame but actively learning from your mistakes. I believe that people work best in a safe environment focused on self-improvement and learning.

Objective

I’m looking for an environment that is either sharing these values or wants to adopt or discuss them. I don’t claim to know every step along the way. I want my work to be meaningful. I want to share and apply my knowledge. I want to collaborate with engaged individuals and continue to learn and improve. I want an environment where I can focus and work at a sustainable pace.

Skills

Programming languages

  • excellent: Ruby, Bourne Shell, SQL
  • good: Python, ECMAScript, PHP, Common Lisp, awk
  • basic: Lua, C, Rust, Clojure, Elixir, Erlang, Go, Nim, Haskell, Java, C++, Perl

Technologies

  • Frameworks: Ruby on Rails, Sinatra
  • Databases: MySQL, PostgreSQL, Redis
  • Search engines: elasticsearch, solr
  • Virtualization: docker, vagrant, XEN
  • Software Configuration Management: chef, ansible, salt, puppet, terraform
  • Web: Apache, nginx, HAproxy
  • AWS: EC2, S3, CloudWatch, CloudFront, ECS, RDS, VPC, Route 53, ElastiCache, IAM

Techniques

  • Programming Paradigms: object oriented, functional
  • Testing: BDD, TDD
  • Collaboration: (remote) pair programming, code reviews
  • agile: Scrum, Kanban, XP, Open Spaces, Communities

Languages

  • German: native
  • English: proficient
  • French: basic

Work Experience

  • Movinga GmbH

    Lead Developer, 2017-01 – 2017-04

    • Organize regular coding dojos
    • Organize sessions on development issues (deployment, synchronization)
    • Implement and facilitate incident review meetings
    • Stabilize, monitor and extend legacy PHP infrastructure
    • Plan infrastructure optimization
    • Participate in recruiting: screening, interviews, create technical challenges
    • Pairing sessions
    • Code reviews
  • Wimdu GmbH

    Lead Developer, 2015-04 – 2016-12

    Team Lead, 2013-10 – 2015-04

    Backend Developer, 2012-05 – 2015-04

    • mentoring
    • implement self-learning ranking algorithm
    • scale availability synchronization with external sources
    • maintain and refactor BI pipeline (python / pandas / MySQL)
    • collaborate on infrastructure and deployment automation
    • refactor and extend payment code
  • Mediapeers GmbH

    Fullstack Developer, 2008-01 – 2012-05

    • implement video conversion pipeline
    • implement search functionality: full text search + filters, UI + backend (jquery, sphinx)
    • extensive reskinning (multitenancy)
    • setting up and maintaining CI and version control systems
    • deployment process
    • server maintenance
  • Aperto AG

    Systems Engineer, 2007-07 – 2008-01

    • develop custom backup solution
    • deployment automation and performance optimization
    • refactored Nagios monitoring setup
  • Max Planck Institute for Molecular Genetics, Klipp Group

    Python Developer, 2006-11 – 2007-03

    Diploma Thesis, 2005-08 – 2006-11

    • “Modeling the TOR pathway in Saccharomyces cerevisiae”
  • Deutsches Institut für Urbanistik

    Systems Administrator and Web Developer, 2000-11 – 2007-07

Formal Education

  • FU Berlin

    Diploma in Biochemistry, 2007

  • Cäcilienschule Wilhelmshaven

    Abitur, 1993