Max Pohlmann: Software Developer, Data Engineer, Software Architecture Consultant, SQL Specialist, Elixir Programmer, Logician (M.Sc.), Computer Scientist (B.Sc.), Philosopher (armchair), Bug Hunter, ...


I'm Max and I like to build complex software solutions. I support companies along the entire solutions lifecycle: identifying problems and opportunities, conceptualising solutions at the domain-level, implementing these solutions in software, creating the technical infrastructure to run it efficiently and safely, and maintaining and improving the software on an on-going basis. My professional focus lies on the conceptualisation and implementation of technical solutions and I most enjoy working with complex domains and solving hard, real-world problems. I have helped companies by taking solutions from concept to shipped product working as a one-man-band, but also am an experienced team-player and have joined and supported large and interdisciplinary teams of freelancers.

Domain-Driven Design To build software solutions for complex domains, the software needs to be build around the domain, rather than squeezing the domain into structures dictated by fixed software principles. This approach makes the software more usable, maintainable, and efficient, but requires a deep understanding of the domain by the software engineer. As a curious person, I enjoy learning about domains from experts and codifying this understanding in the software. Understanding the domain also allows for more meaningful communication with domain experts, which is the fundamental requirement for creating software solutions that are accurate and maintainable.

Data Engineering I have been working intensely with data processing pipelines and have acquired particular expertise in SQL databases, in particular PostgreSQL. I have designed data schemas with a focus on both storage and response-time efficiency, optimised query performance of complex queries on large datasets, built data pipelines handling millions of data points an hour, and created custom data analysis applications.

Software Architecture Apart from domain models, a software projects also comes with its own technical components that are required to solve problems. Coming up with a sensible set of components and coordinating their interactions is the concern of Software Architecture. In my career, I've worked with many architectures and adapted them to accommodate evolving requirements. With this experience, I also offer Software Architecture consulting for new or evolving projects.

Functional Programming I have specialised in functional programming languages, foremost in Elixir, in which I have spent the last couple of years programming. However, I'm also adept in Haskell, OCaml, and Scala. As far as non-functional languages go, I'm proficient in SQL, JavaScript, Python, Java, and PHP, as well as HTML and CSS.

My Life I started out creating websites for local companies during my high school years. I studied Computer Science (B.Sc.) at the Technische Universität Berlin and graduated with a final grade of 1.3. Afterwards, I studied Logic (M.Sc.) at the Universiteit van Amsterdam and graduated cum laude with a final grade of 8.9. During my studies, I gained my first experience of working on a bigger software project at a Berlin-based start-up, where I joined as the first employee and helped build up the product from an early stage on. I began my freelancing career during my Master's studies and have helped many companies solve problems with software ever since. Currently, I am based in The Hague, Netherlands.