Profile

Meinte is an expert in applying model-driven methods and technology such as domain modeling, language engineering and code generation to drive software development towards higher productivity, higher quality and reduced time-to-market. He also is an experienced, all-round and full-stack software developer for technological areas such as (but not limited to) JavaScript/TypeScript/Node.js, and Java. He likes to operate in a environment where open communication, innovation and initiative are valued - preferably in an Agile/Scrum way of working. He's currently writing a book with his extensive knowledge of, and experience with implementing Domain-Specific Languages for Manning Publications, due July 2021.

Meinte achieves the goals set by acting as a "multiplier", and helping your organization become much more productive. He typically does so in the following ways:

Meinte has strong analytic and conceptual skills, while remaining pragmatic. He likes being challenged by situations where innovation and change are important success factors. He is capable of acquiring both a helicopter and a microscopic view and combining these to come up with an optimal solution. He is accustomed to take initiative and is able to voice his professional opinion in a clear, constructive and typically enthusiastic manner. He is communicative, reliable, knowledgeable and likes to coach co-workers.

Summary

Education: Master of Science/drs. in Mathematics (cum laude), University of Groningen, August 2002.
Languages: Dutch (mother tongue), English (excellent), German (good).
Date of birth: April 5th, 1977.
Residence: Voorhout, the Netherlands.

Work experience

Manning Publications (12/2018 - present)Writing a book Building User-Friendly DSLs, on projectional, business-oriented DSLs.
VWS Corona-team (6/2021 - August 2023)Language engineering, and software development for the European Digitial COVID Certificate.
Belastingdienst (10/2017 - 8/2021)Team leading, language engineering, and software development for Agile Law Execution Factory (ALEF) and PoC Gegevens.
BiZZdesign (1/2017 - 7/2017)Consultancy on and development of BiZZdesign's Web Portal HoriZZon.
Mendix (10/2014 - 12/2016)Lead development of: Web Modeler, Model API+SDK, ModelShare.
ANWB (12/2013 - 7/2014)Developed Flow, a Web app for the Alarmcentrale, based on CQRS.
Ministery of Security and Justice (7/2013 - 11/2015)Developed REPRIS3.0, a public-facing Web app for doing advanced statistical analysis on delinquent data.
Más (mid 2011 - 2014)Developed Más, a Web-based domain modeling/language workbench.
Blaasfunctie.nl ([3-8]/2012)Developed a Web app supporting medical research, using in-house developed RAD solution.
Simlike (12/2011 - 9/2012)Lead development for Simlike, a Facebook application for planning social activities.
Intuit, USA ([4-9]/2011)Consulted on Xtext and language engineering for TurboTax.
Capgemini (8/2008-1/2011)Consulted on various projects and bids involving Model-Driven Software Development.
Atos Origin (1/2006-8/2008)Consulted on various projects involving Java development, Legacy Transformation and MDSD.

Methodologies and technologies experience

Domain ModelingDomain-Driven Design, CQRS, UML
Language EngineeringDSL design, structural and projectional editing, Jetbrains' MPS, Xtext, EMF/Ecore, ANTLR, Intentional Software
Functional ProgrammingKotlin, Scala, Xtend, Java8, RxJS (Java-/Typescript)
JavaScriptNode.js, TypeScript, ES5/ES6, React, MobX, RxJS, Angular2+, jQuery
JavaJEE, Java 5-14, Spring, JPA, Play, Kafka
DatabasesMySQL, PostgreSQL, MongoDB, Oracle, SQLite, schema design
Integrated Development EnvironmentsIntelliJ/IDEA, Visual Studio Code, Gitpod.io, Eclipse
Application ServersJetty, Tomcat, Mendix, Google App Engine
Cloud servicesAmazon Web Services (Elastic Beanstalk, S3), Pivotal, Cloud Foundry
Process toolsGit, Subversion, Jenkins, Jira
Rapid Application DevelopmentMendix (Model Server and SDK)
Work organizationAgile, Scrum, line management

Detailed work experience

Ministerie VWS (Dutch Ministry of Health, Science, and Sports) - Corona-team

PeriodJune 2021 - August 2023
RoleSoftware language engineer
ActivitiesLanguage engineering, and software development
TechnologyWeb stack (JavaScript, TypeScript), Kotlin, Python3

The Digital COVID Certificate (DCC) is a standard from the European Health Network (eHN) to exchange signed certificates of vaccinations, tests, and recoveries, in the form of QR-codes. Carrying such a DCC, EU citizens can travel provided they qualify for entrance into EU Member States. The qualification criteria are expressed as a set of business rules evaluated on the DCC and some external data, which can vary across regions, and over time.

Meinte joined the VWS Corona-team to help EU Member States implementing these business rules, and make them interchangeable. That way, it became possible for a EU citizen to check whether they qualify for entry ahead of travel. These business rules were executed in a bespoke rule engine.

Meinte specified CertLogic: a DSL for expressing business rules logic in a JSON format, and implemented various tooling around that. He also implemented rule engines based on CertLogic on various platforms (Web, Kotlin), and shepherded implementations on various other platforms (Java, Swift, Go). He helped with coordinating the DCC business rules effort on a EU-wide scale, and with implementing business rules, and rule engines in DCC apps for Member States and participating Third Countries. He also set up and implemented automated analysis of the business rules.

Meinte also helped with overseeing the overall EU DCC-effort. Activities included: custodianship and release management of EU DCC-related standards (schema, valuesets, business rules), advising on the evolution of the EU DCC, and helping with the migration of the EU DCC to the WHO.

Belastingdienst (Dutch Tax and Customs Administration) - Agile Law Execution Factory (ALEF) and PoC Gegevens

PeriodOctober 2017 - August 2021
RoleTeam lead
ActivitiesTeam leading, language engineering, and software development
TechnologyJetBrains MetaProgrammingSystem (MPS), Java(EE), FICO Blaze, IBM DB2, JavaScript and HTML

The Agile Law Execution Factory (ALEF) is a no-code environment that allows business analysts to capture tax law as a collection of rules, backed by a data model. This environment is based on the JetBrains MPS language workbench, and provides a coherent system of Domain-Specific Languages to specify all aspects of a Web service for executing tax law rules: data model, business rules, service definitions, test scenarios, and various other languages in a supporting role. It's currently used in several projects within the Belastingdienst, with great success and impact.

Meinte joined the ALEF MDSE team as a co-team lead, to improve both the product as well as its development process. Due to the combination of his extensive language engineering knowledge and general software development skills, Meinte was able to pick up this role quickly and efficiently. He was able to implement many improvements, putting the ALEF product and its roadmap on a more solid footing. In particular, he pushed actively for extensive knowledge sharing across the team by introducing Pull Request-based code reviews, and documentation practices.

Before joining the ALEF team, he started as a consultant on the Proof-of-Concept project "Gegevens". This project was an effort to unify the way that the tax service deals with data coming in from various sources in a consolidated and efficient manner. Central to this was creating a modeling environment with languages that allow domain experts to define what form this data may have, how it may change through time and how inconsistencies can be resolved. Meinte developed this modeling environment, from which a working software system was generated, using MPS.

BiZZdesign - HoriZZon (Web Portal)

PeriodJanuary - July 2017
RoleConsultant and developer
ActivitiesDevelopment, consultancy
TechnologyJavaScript/TypeScript, Angular2+, RxJS, Java8, Play framework, Kafka, PostgreSQL

BiZZdesign is a software company that produces a desktop-based tool to model large-scale businesses for architectural and communicative purposes. Meinte was hired to create and implement a Web Portal that allows BiZZdesign clients to share and edit their models over the Web, based on Meinte's extensive experience he gained from working with Mendix and creating Más. Next to that, Meinte was asked to consult and advice with regards to BiZZdesign's way of working (Agile, Scrum), team dynamics, and quality improvement.

HoriZZon, the BiZZdesign Web Portal brings together a number of components and technologies: a Web application written in TypeScript using Angular2+ and RxJS, a Restful backend (the Repository API) written in Java using Lightbend's Play framework and running against a PostgreSQL database, a Kafka-backend written in Java, as well as several existing BiZZdesign-specific microservices to interop with the desktop-based modeler (Enterprise Studio).

Due to his broad software engineering experience and his language engineering in particular, Meinte was able to ramp up very quickly, and become pivotal in bringing the Web Portal to its first releases. He was able to support the team in the use of the functional programming paradigm in general and with RxJS in particular, and pushed it towards a more effective use of Scrum. He was also able to provide the Product Owner and CTO with advice about team dynamics, and pave the way for quality improvement by driving code improvements, writing of tests, and moving towards CI and CD.

Mendix - Web Modeler, Model API and SDK, ModelShare

PeriodOctober 2014 - December 2016
RoleAll-round development lead
ActivitiesDesign, architecture, development
TechnologyJavaScript/TypeScript, React, Xtext/Xtend, Node.js, AWS (Elastic Beanstalk, S3), Pivotal (Cloud Foundry), MongoDB

Mendix is a company that provides a low-code aPaas (application-Platform-as-a-service) solution, where you can model your applications using a visual modeling language and deploying them frictionlessly to the Cloud. Meinte was hired by Mendix for his knowledge on model-driven software engineering, language engineering and especially implementing Web-based model editors. At Mendix, he has spearheaded a number of efforts which capitalized on his expertise.

The most important project was the Web Modeler (recently released) which is meant to move the modeling capabilities of their Windows-based Business Modeler to the Web, and open Mendix up for citizen developers. For this, Meinte has been instrumental in making technology choices, drawing up the architecture and pushing implementation forward.

The Web Modeler uses a client-server architecture for storing models on-line: the Model SDK and Model Server, respectively. Meinte has been instrumental in creating both, again making technology and architecture choices, implementing large parts of these products, and promoting their use in- and outside of Mendix. The Model SDK and API have been made generally available, and several Mendix partners have already been making good use of these to open up and programmatically analyze/change/update/migrate their models.

To efficiently create the Model SDK and API, Mendix has started an effort to formally describe the meta model underlying its visual modeling language. Meinte has used his knowledge of Xtext, Xtend to guide and help with the creation of MxCore, a bespoke meta modeling language. He has also used his experience with legacy transformation to harvest existing code into its meta model form.

Meinte was also part of the effort to create Mendix Model Share, which is a product to share certain types of Mendix models with anyone.

ANWB - Flow

PeriodDecember 2013 - July 2014
RoleJava developer
ActivitiesAgile Java development
TechnologyJava(EE, 8), JavaScript, jQuery, Angular, JPA (Hibernate), Spring, IntelliJ/IDEA, CQRS, Axon, WebSockets (STOMP)

Flow is an application used by the ANWB Alarmcentrale to perform the entire (pre-billing) process regarding helping customers stranded with their vehicles, from the incoming phone call to hand-over to the Wegenwacht or European partners and such. The ANWB intends for Flow to replace the legacy applications (Care, Alias) latest in 2015 as well as to be a platform to build new services on, compliant to their Fit philosophy.

Flow is a JavaEE application with a Angular-driven frontend. As per Q2 of 2014, the project has transitioned to a CQRS-based architecture, using the Axon and Spring STOMP frameworks, effectively starting a new code base.

Meinte was one the Java developers for this application, responsible for enhancing and Refactoring the existing code base as well as adding new functionality, writing tests, performing detailed analyses and user testing and solving production incidents. He was instrumental in pro-actively urging/coaching the team to take seriously the task of documentation (which was effectively lacking altogether) of the code base and development environment. Also, he brought to the table his Refactoring experience to realise a large-scale Refactoring of the existing code base. Finally, he has advocated a transition to the new architecture.

REPRIS3.0 - Recidivemonitor, WODC, Ministerie van Veiligheid en Justitie

PeriodJuly 2013 - November 2015
RoleContractor
ActivitiesRequirements gathering, implementation, delivery
TechnologyJava(EE, 6), JavaScript, jQuery, JDBC, Jetty/Tomcat, Guice, Less; MySQL, Oracle databases

Repris is a public-facing application offered by the Recidivism Monitoring Group of the Scientific Research and Documentation Center of the Ministry of Safety and Justice with which so-called survival analyses can be performed within configurable, anonymised sub populations of delinquents. The Group wanted to enhance this application with more advanced analysis configuration possibilities and the possibility to have authenticated users with variable privileges.

Meinte is the prime contractor of this project, responsible for everything from drawing up the tender, to requirements gathering, implementation, testing, documentation, to final delivery including an installed and working acceptance environment, as well as managing his subcontractor who took care of layout/design (CSS).

In order to allow for the required analysis enhancements, Meinte had to reimplement the entire analysis based on raw data whereas the old application essentially only had to serve up precomputed data. To fulfil the other requirements, he has implemented a workbench for use by the Group themselves. The application is implemented in the N-tier rich client-server style using ReST-like communication, mainly over JSON.

Más - domain modeling in the Cloud, made easy

PeriodMid 2011 - End of 2014
RoleFounder/owner
Activitiesvision and implementation
TechnologyXtend, Eclipse, Java(6), JavaScript, jQuery, Google App Engine, Objectify

Más is a domain modeling workbench in the Cloud which provides users with the capability to create domain modeling languages and models using those languages, all in one browser-based tool without the need to install software.

Meinte is the sole initiator of this project, so he's responsible for architecture, development, presentation, marketing and everything else. The workbench consists of a backend hosted with Google App Engine and written using Xtend/Java. The frontend consists of a Web application written in HTML5, JavaScript with jQuery and ReST-like communication with the backend over JSON.

Simlike

Period01-12-2011 - 01-09-2012
RoleTechnical lead
Activitiesoverall technical and development leadership, implementation of MDSD
TechnologyXtext/Xtend (Eclipse EMF/TMF), Eclipse, Java(6), JavaScript, jQuery

Simlike was a startup creating a Facebook application which aims at integrating finding social activities and planning these with friends and handling with the activities' vendor.

Within Simlike, Meinte has made himself responsible for technical and development leadership, acting as architect and coach for the development team, bridging the gap that traditionally exists between designers, generally contributing from his software engineering and process experience, and introducing Agile and Scrum practices.

Also, Meinte has introduced Model-Driven Software Development as a means to be able to code the application on a level of abstraction that coincides with that of the functional design so that the functional design can be validated and changed quickly. At first, mobl was used but after that was found to be inadequate, Meinte has headed the development of a set of proprietary DSLs which are better fit-for-purpose.

Blaasfunctie.nl

PeriodMarch - August 2012
RoleTechnical lead
Activitiessoftware development, principal technical customer contact
TechnologyXtext/Xtend (Eclipse EMF/TMF), Eclipse, Java(6), HTML5, JavaScript, jQuery, MySQL, JDBC

Blaasfunctie.nl is an application which is part of a urological research effort conducted from within the Erasmuc Medical Center, Rotterdam. It allows patients to record measurements pertaining to their bladder function and doctors to review these and give advice accordingly. The more standard part of this advice is captured as a decision tree process within the application. Next to that, alerts are sent to the doctors in case of anomalous measurements and potentially dangerous situations.

For this project, Meinte has done all of the software development work (both front- and backend) as well as conducting regular acceptance and Sprint planning meetings - the Agile methodology was used. Also, he co-wrote the project proposal. For the implementation, he was able to effectively re-use his knowledge of and experience with custom-built programming languages for rapid software development - again for both front- and backend development.

Intuit - TurboTax Tech Refresh

Period05-04-2011 - 30-09-2011
RoleDSL expert
Activitiesconsultancy on language development
TechnologyXtext/Xpand/Xtend (Eclipse EMF/TMF), Eclipse, Java(6)

Intuit is a large supplier of consumer and small-business financial software.

Within Intuit, Meinte has consulted on two internal projects, providing advice on existing and future language implementations, showing various Best Practices, demoing a number of Proof-of-Concepts and making teams of software engineers more self-sufficient with the chosen technology.

Meinte's efforts have helped the team achieve short-term improvements, as well as paved the way for their mid- to long-term goals.

Capgemini

PeriodAugust 2008 - February 2011
RoleSoftware language engineer
ActivitiesDevelopment of DSL/language engineered-based software solutions
TechnologyIntentional Domain Workbench (Intentional Software), Xtext/Xpand/Xtend (Eclipse EMF/TMF), Eclipse, Java(6)

Meinte joined an innovative team at Capgemini to design and implement software solutions that are based on software language engineering, and DSLs in particular. He participated in several Proof-of-Concepts for customers in the financial industry, using a variety of technologies - most notably Intentional Software's Intentional Domain Workbench. He also co-wrote several RfPs/bids, crafted several prototypes of software solutions, and gave workshops and presentations on language and DSL engineering. Finally, he took part in a project for Allianz Nederland Levensverzekering N.V. to develop a mid-office system for the mortgages sales process. This project relied on model-driven software development, language engineering, and code generation to develop a working software system with a minimal number of developers, and a team of non-programmer domain experts.

Atos Origin

PeriodJanuary 2006 - August 2008
RoleSoftware development
ActivitiesSoftware development
TechnologyXtext/Xpand/Xtend (Eclipse EMF/TMF), Eclipse, Java(5)

Meinte joined Atos Origin as a Java trainee, and quickly progressed to full-fledge Java software developer, working (among others) for Ahold/Albert Heijn. He then joined the Software Development & Maintenance Center (Emerging Technologies) to help with setting up a Legacy Transformation Factory. This factory intended to efficiently transform legacy software to a modern, more future-proof and maintainable form, with a focus towards transforming COBOL software to J2EE applications. Meinte’s task was to envision, create and manage all the technical details which were required for this innovative technologies. To this end, he has developed several technologies and components and drafted methodology and process designs for the Legacy Transformation Factory, as well as performing reviews on third-party legacy modernization tools. Besides that, Meinte has helped several projects out by implementing technological and process improvements, mainly based on model-driven software development. He has also participated in a number of bids which were not directly related to his primary field of interest.