Rob van der Leek
Senior Software Engineer

About

Software engineer with over 15 years of industry experience. Feels confident working in greenfield environments and skilled in setting up architectures and development processes from scratch. Loves to work with modern technologies and frameworks, knows the importance of selecting the right tool for the job. Desire to understand the inner workings and the business context of a software product. Software minimalist, is aware of the challenges of long-term maintenance. Strong communicator, both written and spoken.

Work Experience

Kepler Vision Technologies
Amsterdam, The Netherlands
Develops software for body-language understanding using Computer Vision and Machine Learning technology.
June 2018 – Present
Senior Software Engineer
In my role as a software engineer at Kepler I'm building and maintaining various parts of the internal software stack.
Highlights
  • Building an annotation toolkit to label image and video data, main technologies: Java, JavaScript, TypeScript, Spring Boot and React
  • Setting up continuous integration & delivery pipelines for machine learning models, using CI/CD pipelines in GitHub Actions and Jenkins
  • Setting up and maintaining the cloud infrastructure that's used for development (training/testing) and production (inference), using Amazon Web Services and Terraform
Software Improvement Group
Amsterdam, The Netherlands
Management consultancy company focusing on software quality, software risks and software economics
February 2005 – May 2018
Senior Software Quality Consultant
In my role as a consultant I assessed both newly built systems or systems that are in operation for over 30 years. These systems ranged from embedded software to multi-technology back-office portfolios (basically from mobile to mainframe). For this job I combined my analytical skills, automated software analysis, structured analysis processes and expert opinion.
Highlights
  • Building a static code analysis toolkit to determine the quality of codebases, worked with a large variety of parsing technologies in Java
  • Co-authoring a book on building maintainable software
  • Building a self-service platform for code quality: https://bettercodehub.com, main technologies: Java, JavaScript, Spring Boot, Angular, GitHub

Volunteer

CoderDojo
September 2021 – Present
Mentor
Global movement of free coding clubs for young people.

Projects

  • Patching.io: Timeline of awesome apps from Glitch.com
  • Create Issue Branch: GitHub App/Action that automates the creation of issue branches

Education

Skills

Programming Languages Master
Java Python JavaScript TypeScript HTML CSS Unix Shell
Frameworks Master
Spring Boot React NextJS Flask REST
Tools Master
Docker Amazon Web Services Heroku Terraform Git GitHub

Publications

Building Maintainable Software: Ten Guidelines for Future-Proof Code
O'Reilly Media, Inc
27 January 2016

10 easy-to-follow guidelines, derived from analyzing hundreds of real-world systems, for delivering software that’s easy to maintain and adapt.

Interests

Hobbies
Side projects Reading Biking Skiing

References

Rob was among the first engineers that joined Kepler Vision in June 2018 and has played a key role in the architecture and implementation of the Kepler Night Nurse software. He is a skilled software developer who knows how to design software that is reliable, scalable and maintainable. Rob oversees the complete development process, from inception to delivery. He takes the lead in setting up internal ways of working, and knows how to translate client needs into product features.

Rob is a solid, all-round software engineer and razor-sharp consultant. As my co-author on the O’Reilly book Building Maintainable Software and as lead developer for Better Code Hub, he demonstrated a strong vision on software quality and how to embed code quality analysis in modern software development practices. As a software consultant Rob demonstrated deep insights in the challenges of enterprise software. He contributed strongly to the development of industry-strength software analysis tooling and to its effective application to support IT portfolio governance.