Boris van Katwijk Lead Software Engineer |
|
Boris van Katwijk Lead Software Engineer |
|
HeadFirst Group Lead Developer / Architect Hoofddorp Feb 2021 - Jan 2025 |
|
---|---|
At HeadFirst Group started as senior backend and cloud developer and quickly transitioned into a cross-team
Development Lead. In four years the department quadrupled in size, requiring new solutions in
streamlining, automation, tooling and standardization.
Due to company mergers the microservice landscape had grown too large and diverse to
maintain
leading to technical
debt and a decrease in velocity. I asked for the green light to spend part of my time on
general
development improvements.
Bij HeadFirst Group startte ik als senior backend- en
cloudontwikkelaar en transitioneerde naar een teamoverstijgende Lead Development rol.
in de Development afdeling dat groeide van een team van 5 ontwikkelaars naar
drie
complete scrumteams. Deze groei vereiste stroomlijning, automatisering, tooling en
standaardisatie. Door fusies van bedrijven was het techniekpakket te groot en divers
geworden om te onderhouden, wat leidde tot Technical debt en een afname van de
ontwikkelsnelheid. Ik
kreeg groen licht om een deel van mijn tijd te besteden aan algemene
ontwikkelingsverbeteringen.
While keeping the flow of the teams I introduced steps to simplify and reduce the required work. Colleagues joined in with ideating and implementing these improvements. I reduced work by providing generated API clients between projects. I set up SonarQube pull request decoration, automated CI/CD pipelines and fed notifications into Slack. I introducted distributed tracing with AWS XRay to be able to visualize performance bottlenecks, administrated and standardized logging in GrayLog, set up alerts for important errors, hooked up critical alerts into Slack to reduce lead time. I removed all branching habits from the numerous repositories by using trunk-based development, eliminating error-prone git work. Not only did this require thorough design and implementation effort, but also project management, as well as gaining support from peers and higher level management by hosting demos, presentations and feedback sessions. Please see some LinkedIn recommendations. Zonder de flow van de teams te onderbreken introduceerde ik stappen om het vereiste werk te vereenvoudigen en te verminderen. Collega's hielpen mee met het bedenken en implementeren van deze verbeteringen. Ik verminderde het werk door gegenereerde API-clients tussen projecten te leveren. Ik stroomlijnde CI/CD pipelines en automatiseerde codeanalyse met Sonar. Ik introduceerde Distributed Tracing AWS XRay om performance knelpunten te kunnen visualiseren, beheerde en standaardiseerde logging in GrayLog, stelde waarschuwingen in voor belangrijke fouten en koppelde kritieke waarschuwingen aan Slack om reactietijd te verkorten. Ik heb alle branching uit de talrijke repositories verwijderd door trunk-based development te gebruiken, waarmee foutgevoelig git-werk onnodig werd. Dit vereiste niet alleen een grondige ontwerp- en implementatie-inspanning, maar ook projectmanagement en aantonen van de verbetering aan collega's en directie door demo's, presentaties en feedbacksessies te geven. Graag wijs ik op enkele LinkedIn-aanbevelingen. |
|
Susteen Project Lead & Developer Remote Nov 2020 - Mar 2022 |
|
Susteen provides detailed housing sustainability advice based on physics-based modelling. I worked on a project to dynamically generate web forms from Excel-based models, enabling real-time data input and recalculations within the Excel sheets. This required parsing the Excel model, designing a system to synchronize form data with calculations, and ensuring seamless updates. Beyond implementation, I was responsible for feature design, cloud infrastructure, stakeholder collaboration, and project management. Susteen biedt gedetailleerd advies over duurzaamheid van woningen op basis natuurkundige modellen. Ik heb gewerkt aan een project om webformulieren dynamisch te genereren vanuit Excelmodellen, waardoor realtime gegevensinvoer en herberekeningen in de Excel-sheets mogelijk zijn. Hiervoor moest het Excel-model worden geparseerd, een systeem worden ontworpen om formuliergegevens te synchroniseren met berekeningen en naadloze updates worden gegarandeerd. Naast de implementatie was ik verantwoordelijk voor het ontwerp van functies, cloudinfrastructuur, samenwerking met belanghebbenden en projectmanagement. | |
Cleverbase /
Vidua Senior Developer The Hague Aug 2019 - Nov 2020 |
|
At Cleverbase I worked in a team of engineers on ISO 27001 applications for the secure exchange of digital information, including qualified electronig data signing and providing secure digital identification. I contributed to a microservices architecture built with Scala, Java, Go, Python, JavaScript, and React, applying functional programming (FP) and domain-driven design (DDD) principles. Additionally, I led a complete overhaul of the Git strategy and CI/CD pipelines. I also designed and developed automated audit tooling for our AWS cloud infrastructure to ensure compliance and company certification status. Bij Cleverbase werkte ik in een team van engineers aan ISO 27001 applicaties voor de veilige uitwisseling van digitale informatie, inclusief gekwalificeerde elektronische gegevensondertekening en het verstrekken van veilige digitale identificatie op het hoogst mogelijke eIDAS. Ik droeg bij aan een microservicesarchitectuur die is gebouwd met Scala, Java, Go, Python, JavaScript en React, waarbij functionele programmering (FP) en Domain-Driven Design (DDD)-principes werden toegepast. Daarnaast leidde ik een complete revisie van de Git-strategie en CI/CD-pipelines. Ik ontwierp en ontwikkelde tevens geautomatiseerde audittools voor onze AWS-cloudinfrastructuur om correctheid, veiligheid en certificeringsstatus van het bedrijf te garanderen. | |
Sping Digital Lab Senior Developer Delft Dec 2017 - Aug 2019 |
|
Sping Digital Lab is a software project bureau located in Delft. I worked on various projects, including a gig work platform and mobile application including administration, time-tracking and payout. Working at Sping gave me the opportunity to work with great colleagues on versatile fullstack projects involving Java, Ruby, Javascript, Typescript, Spring, Play, Rails, NodeJS and Vue. My other responsibilities included CI/CD processes, containerizing applications, development setup of projects with instant reloading, hosting technical workshops and setting up and administrating AWS infrastructure. I achieved AWS Certified Solutions Architect - Associate Sping Digital Lab is een software projectbureau gevestigd in Delft. Ik heb aan verschillende projecten gewerkt, waaronder een werkplatform en mobiele applicatie voor uitzendwerk inclusief administratie, tijdregistratie en uitbetaling. Werken bij Sping gaf mij de kans om met geweldige collega's te werken aan veelzijdige fullstack-projecten met onder andere Java, Ruby, Javascript, Typescript, Spring, Play, Rails, NodeJS en Vue. Mijn andere verantwoordelijkheden omvatten CI/CD-processen, containerisatie van applicaties, development-tooling inrichten zoals instant reloading, het hosten van technische workshops en het opzetten en beheren van AWS-infrastructuur. Ik heb hier tevens AWS Certified Solutions Architect - Associate behaald. | |
TOPdesk Software Engineer Delft Jul 2014 - Nov 2017 |
|
At TOPdesk I started my career as a summer intern, then was onboarded as a software engineer
at
the Customer Solutions department,
building customizations into TOPdesk for large customers.
Projects included creating additional user interfaces, integrations with third party
applications or overhauling internal workflows and processes.
Maintaining a wide portfolio of customer solutions on top of an ever-changing base product
developed by around 400 developers required robust testing,
disciplined structure and habits, and type safety where possible to be able to detect
regressions and fix them before new versions of the base product went live.
We used Gradle to orchestrate customer projects on top of the base product as a compiled JAR, then used predefined hooks and techniques like shadowing to create customizable behaviour, hot-reloading for fast development feedback, and got into Docker as soon as the technology matured. A few projects
I promoted Test-Driven Development and code quality, participated in the transition to Continuous Deployment, improved the usage of source control (Mercurial, Git, JIRA), implemented build pipelines for many projects (Gradle, Jenkins, Docker), developed a fine-tuned end-to-end testing DSL (JUnit, Selenium, Karma, Jasmine), and introduced various new tools and frameworks (Scala, Angular, Kotlin, TypeScript, Sonar). Bij TOPdesk begon ik mijn carrière middels een internship en werd daarna aangenomen als software-engineer bij de afdeling Customer Solutions, waar ik maatwerk bouwde in TOPdesk voor grote klanten. Projecten omvatten het maken van extra gebruikersinterfaces, integraties met applicaties van derden of het herzien van interne workflows en processen. Het onderhouden van een breed portfolio van klantoplossingen bovenop een voortdurend veranderend basisproduct dat door ongeveer 400 ontwikkelaars is ontwikkeld vereiste robuuste tests, gedisciplineerde structuur en gewoonten en waar mogelijk Compile- en Type Safety om regressies te kunnen detecteren en te verhelpen voordat nieuwe versies van het basisproduct live gingen. We gebruikten Gradle om klantprojecten te orkestreren op het basisproduct als een gecompileerde JAR, en gebruikten vervolgens vooraf gedefinieerde hooks en technieken zoals shadowing om aanpasbaar gedrag te creëren, hot-reloading voor snelle ontwikkelingsfeedback, en stapten snel over op Docker zodra de technologie volwassen werd. Enkele projecten
Ik heb Test-Driven Development en codekwaliteit gepromoot, deelgenomen aan de overgang naar Continue implementatie, het gebruik van broncodebeheer (Mercurial, Git, JIRA) verbeterd, build-pipelines geïmplementeerd voor veel projecten (Gradle, Jenkins, Docker), een verfijnde end-to-end test-DSL ontwikkeld (JUnit, Selenium, Karma, Jasmine) en verschillende nieuwe tools en frameworks geïntroduceerd (Scala, Angular, Kotlin, TypeScript, Sonar). |
Languages | Java (8 - 23+), Scala (2, 3), Kotlin, Rust, Python, Typescript, Ruby, SQL, Javascript, HTML, CSS, Golang, Gleam |
Frameworks / Libraries | Spring Boot (2, 3), Lombok, Javalin, HTMX, Play, j2html, Velocity, Thymeleaf, Hibernate, JOOQ, HTTP4S, Cats Effect, ZIO, Django, Angular, VueJS, React, Rails, Bootstrap, Cron, gRPC, many more... |
Tools | Maven, Gradle, SBT, Docker, Jenkins, TeamCity, Git, BitBucket, GitHub, GitLab, Cargo, CodeShip, Travis, Nexus, Artifactory, Node, Prometheus, Grafana, many more... |
Testing | JUnit, ScalaTest, RSpec, Cypress, Jasmine, Karma, Mocha, Chai, Mockito, Testcontainers, Selenium, Cucumber |
Services | AWS (certified), RabbitMQ, ElasticSearch, Redis, PostgreSQL, MySQL, SQLite, |
Methodologies/Paradigms | Agile, Extreme Programming, KanBan, Scrum, Test-Driven Development (TDD), Domain-Driven Design (DDD), FP, Data Oriented Programming, OOP, Reactive, Serverless, REST, CQRS, GraphQL, CI/CD, Developer Experience, Trunk Based Development, Pair Programming |
Skills | Critial thinking, Analysis, Mentoring, Hosting workshops, Presenting, Technical Leadership, Team Chemistry |
Application Administration | JIRA, Slack, IntelliJ, VS Code, PostMan, Discord, BitWarden, SonarCloud |
Bachelor Applied Mathematics Technical University of DelftTechnische Universiteit Delft 2009 - 2013 |
|
STIP Delft Treasurer 2013 - 2014 |
|
Contributions Bijdragen | |
Projects Projecten |
|