Detailed work experience
Ministerie VWS (Dutch Ministry of Health, Science, and Sports) - Corona-team
Period | June 2021 - August 2023 |
Role | Software language engineer |
Activities | Language engineering, and software development |
Technology | Web 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
Period | October 2017 - August 2021 |
Role | Team lead |
Activities | Team leading, language engineering, and software development |
Technology | JetBrains 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)
Period | January - July 2017 |
Role | Consultant and developer |
Activities | Development, consultancy |
Technology | JavaScript/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
Period | October 2014 - December 2016 |
Role | All-round development lead |
Activities | Design, architecture, development |
Technology | JavaScript/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
Period | December 2013 - July 2014 |
Role | Java developer |
Activities | Agile Java development |
Technology | Java(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
Period | July 2013 - November 2015 |
Role | Contractor |
Activities | Requirements gathering, implementation, delivery |
Technology | Java(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
Period | Mid 2011 - End of 2014 |
Role | Founder/owner |
Activities | vision and implementation |
Technology | Xtend, 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
Period | 01-12-2011 - 01-09-2012 |
Role | Technical lead |
Activities | overall technical and development leadership, implementation of MDSD |
Technology | Xtext/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
Period | March - August 2012 |
Role | Technical lead |
Activities | software development, principal technical customer contact |
Technology | Xtext/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
Period | 05-04-2011 - 30-09-2011 |
Role | DSL expert |
Activities | consultancy on language development |
Technology | Xtext/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
Period | August 2008 - February 2011 |
Role | Software language engineer |
Activities | Development of DSL/language engineered-based software solutions |
Technology | Intentional 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
Period | January 2006 - August 2008 |
Role | Software development |
Activities | Software development |
Technology | Xtext/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.