Eric Veenendaal
- Location
- Maarssen, Netherlands
- [email protected]
- Website
- www.ericveenendaal.com
- GitHub
- github.com/eveenendaal
Profile
I'm a highly experienced full-stack engineer with a proven track record of delivering complex projects across diverse platforms, including GCP, AWS, and mobile. My background includes leading infrastructure initiatives, streamlining incident response, and developing mission-critical applications, demonstrating strong leadership and problem-solving skills. Furthermore, my experience building and optimizing data pipelines and leveraging machine learning models positions me well to lead data-driven engineering initiatives.
Core Skills
Platforms: GCP, AWS, Cloudflare, iOS, Azure, tvOS, macOS, Android
Databases: BigQuery, Postgres, BigTable, Cloudflare D1, MS SQL, MySQL
Languages: Go, Java, Python, TypeScript, SCSS, Kotlin, SQL, Swift, JavaScript, C#, C/AL
Infrastructure: Docker, Kubernetes, GitHub, Dataflow, PubSub, GitHub Actions, Cloudflare Workers, Terraform, Cloudflare Pages, Bamboo
Frameworks: Spring Boot, Airflow, DBT, Vue, Apache Beam, Terraform, Pandas, Angular, Gin, React, Vite, Pug, HTMX, Svelte, Ionic, Dynamics NAV, Talend
Machine Learning: Claude, AutoML, Gemini, GitHub Copilot
Projects
Toaster Simplification and Re-Architecture
I led the simplification and re-architecture of Toaster, Bol's search data preparation platform, consolidating a fragmented API and worker topology into a flatter Go-based architecture and redesigning data storage around CloudSQL and BigQuery for relational workloads. This made retroactive flows auditable, reduced operational complexity, cut costs by 30%, and unlocked reliable large-scale reprocessing for categories and facets involving millions of products.
Search Metrics Modernization
I rearchitected search metrics from a Dataflow-based pipeline into a DBT job orchestrated by Airflow, moving the workload into a simpler and more maintainable ELT flow. This reduced operational overhead and made the metrics model easier to evolve, validate, and own within the analytics stack.
Platform Liaison Logistic
During my time as the platform liaison for the logistics department, I was the point person to communicate the infrastructure needs of 30+ teams to the central Technical Platform Services (TPS) team. I was able to get a number of projects prioritized that had been waiting for months. I was also able to communicate to the teams within logistics any issues (cost, security, priorities, limiting benefit, etc.) with their proposals and guide them in alternative directions.
Software Engineer on Duty
I am a member of one of the Software Engineer on Duty (SoD) teams. During my time as SoD, I have designed and implemented a number of tools and process improvements to how SoD is run. This has included streaming lining the incident discover processes and automating a number of the regular documentation tasks.
Inbound Warehouse Label
When stock is sent to the warehouse, a label needs to be printed and attached to the outside of the packages/pallets. The quality and size of these prints vary greatly from retailer to retailer. To address this, I prepared many variations of the labels and traveled to the warehouse. I spent a day with a colleague at the dock scanning multiple variants with every type of scanner that was present. Working with the colleague, we designed an improved label that would work with all the variations the two of us could think of. The label was released the next day, and the number of labels that were unable to be scanned dropped significantly.
Bol CLI
This command line application is a Go-based application that enabled developers to quickly perform common triage tasks on Bol.com infrastructure. This tool is used by several SoD teams within the company to mitigate incidents.
PubSub Manager
This application, which was built as a hackathon project, allows teams to manage their dead letter queues in a ready to use UI. The application was built using a Spring Boot backend and a Vue frontend. This docker-based approach allows teams to get up and running with just a few lines of terraform configuration, rather than having to build a complete UI in their application.
Inbound Shipment Data Warehouse ELT Pipeline
To separate our application domain from our business domain, we built a data warehouse to store all inbound shipment data. Developed in DBT and leveraging ELT, this new pipeline replaced a legacy ETL pipeline. This new pipeline reduced both the time and cost of maintaining this data warehouse by an order of magnitude. It also enabled us to later build prediction models for inbound shipment issues using AutoML.
Inbound Shipment Event Management API
This project involved splitting up a legacy monolithic application into a set of microservices. The original application had grown and needed to be divided into different teams. This transition needed to be made in phases to avoid disrupting normal operation. By using an event-based architecture, we were able to move individual events from the old system to the new system one at a time. This allowed us to keep the old system running while we built out the new system.
Stonebrook Homeowners Association Website
I built and maintain the website for the Stonebrook Homeowners Association (https://www.stonebrookhoa.org), a full-stack application serving the community with document management, news, meeting minutes, and a photo gallery. The backend is a Go service in a domain-driven design, with a React/TypeScript frontend, Cloudflare D1 and R2 for data and file storage, Gemini (via Cloudflare AI Gateway) for AI-generated titles, descriptions and summaries, full-text search, and an MCP server exposing document search as tools. It deploys as a Cloudflare Worker + Container via GitHub Actions, with infrastructure managed in Terraform.
Video Gallery Project
I built and open-sourced a serverless Go application for serving a video library stored in a cloud storage bucket. You can find more details in the following blog post: https://www.ericveenendaal.com/blog/video-gallery
Video Feed Player
I built a video feed player for tvOS that parses a user-provided video feed and makes the videos available to play on their AppleTV. I also open-sourced a related application for building such a feed. I have a blog post about this application at https://www.ericveenendaal.com/blog/video-feed-player
Video Capture Passthru
I built a video capture pass-through application for macOS that enables users to use their Mac as a second monitor using a capture card. Most software for capture cards optimize for recording video, but this application optimizes for low latency at high resolutions. I have a whole blog post about it at https://www.ericveenendaal.com/blog/capture-passthru
Personal Website
I built this website to showcase my skills and experience. It has gone through several iterations, and is currently a Go backend with server-rendered HTMX, pre-rendered to static HTML and deployed on Cloudflare Pages with a Cloudflare Pages Function handling the contact form.
Onegevity Platform Library
The Onegevity Platform is a software-as-a-service product that provides health testing and data analysis tools to third parties. Development involved a large team of developers, designers, and marketers. My portion of this project was building a JavaScript/TypeScript library to handle the display of the various reports and graphics that could be embedded on third-party sites. This meant isolating all dependencies in our library to allow third parties to easily display our health data reports on their sites with minimal effort.
Thorne Mobile App v2
To make our mobile app cross-platform and easier to maintain, I ported our existing Swift-based iOS app to Ionic. Ionic is a cross-platform framework that compiles HTML, (S)CSS, and TypeScript/JavaScript to native iOS and/or Android apps. In addition to porting all the iOS layouts to HTML, SCSS, and TypeScript, I had to set up the cloud build process with the correct certificates in both Google Play and Apple app stores to test the app on both Android and iOS.
Thorne Website Frontend Rebuild
I worked with two other developers and our design team to upgrade our frontend infrastructure of Thymeleaf-based pages using jQuery to mostly JavaScript-based pages using Vue and several backend JSON endpoints. This involved dozens of very detailed pages with several custom animations and mobile-friendly responsive designs, and several of these pages needed to be designed and loaded into our custom CMS for non-developers to maintain.
Dynamics NAV Migration
I worked with two other developers to upgrade the previous ERP system (Dynamics AX) to Dynamics NAV 2017. This involved migrating or creating all BOMs, Routes, Inventory, Sales Orders, Purchase Orders, and Production Orders. In addition, we had to reimplement our Data Warehouse and Web integrations. We were able to perform this migration in roughly 9 months, and have supported all customization internally since go-live. Part of this support involved migrating the manufacturing facility across the country and briefly operating manufacturing in two locations.
Thorne Research Mobile App
I built a native iOS app from scratch in Swift to sell Thorne Research products. I was also responsible for developing the API used by the app to integrate with our website. This included product pages, product subscriptions, product ordering, product search, and enabling users to maintain all user information from the app.
Thorne Research Data Warehouse
In order to decouple sales analysis from the ERP system, I built an ETL process to extract all sales information from the various locations and load it into our star-schema-based data warehouse. This data warehouse allowed us to migrate ERP systems without impacting sales reporting.
Thorne Research Ecommerce Website
I am part of a small team of full-stack developers that maintains all aspects of Thorne's e-commerce website. This includes frontend pages, data layers, data migration, database design and maintenance, ERP integration, batch jobs, infrastructure, external APIs, continuous integration system, issue creation and handling, etc.
Professional Experience
Lead Engineer at Bol.com (Utrecht, NL), September 2021 to Present
As an IT member of Warehouse Retailer Interaction, I work on the problems that arise between the bol.com logistics via bol product and the retailers attempting to use this product. This involves building APIs, dashboards, emails, maintaining data models, project management, root cause analysis, and more.
I also have several addition roles. I am the platform liaison for the logistics department (30+ teams) to the central Technical Platform Services (TPS) team. I am a member of one of the Software Engineer on Duty (SoD) teams that provide after-hours support for 20+ applications related to warehousing.
Lastly, I participate in many technical community initiatives. This includes Horizontal Tech Infinitives. These are groups of engineers from across the company that come together to solve shared problems. I also participate in the company hackathon every year, and in 2023 I won the top project.
Owner at Eric Veenendaal (Maarssen, NL), May 2013 to Present
I have built a number of applications to solve problems I have encountered in my daily life. These applications have ranged from video feed players to websites to video capture applications. I have also built a number of open-source applications to help others solve their problems.
Software Development Engineer III at Thorne Research (Madison, WI, USA), January 2015 to July 2021
As a member of a small team of senior engineers at a rapidly growing personalized health company, I was expected to be able to develop on any technology stack and at any level of that technology stack.
- Mobile App Development
- Developed/maintained a number of mobile apps used to purchase our premium nutrition supplements.
- Developed and tested the underlying API necessary to integrate this app with our website.
- ERP - Dynamics NAV 2017
- Ported Data from existing Dynamics AX ERP to new Dynamics NAV 2017
- Maintained and customized Dynamics NAV 2017
- Database Warehousing
- Created and maintained Microsoft SSAS and Data Warehouse
- Created ETL process for ERP data using Talend
- Create, Maintained, and Transferred Numerous Ecommerce Websites
- Created and maintained website code and infrastructure
- Created and maintained batch job code and infrastructure
- Created and maintained integration with ERP
- Created and maintained APIs for external consumption
Senior Software Engineer at Fetch Rewards (Madison, WI, USA), November 2013 to December 2014
Came to this grocery store platform company as the first senior-level hire at the fledgling start-up. I created and rebuilt many components of the entire company’s software and hardware stack. A few of these aspects included:
- Backend changes
- Replaced the entire cloud hardware stack with a horizontally scaling architecture
- Standardized all backend services to Java
- Took dozens of workflows between mobile, backend services, and end-user from concept to reality.
- Embedded systems
- Designed and build a virtual scale that could provide weight information to a mobile phone
- Mobile software
- Built service SDKs for iOS and Android. These SDKs allowed the mobile devices to interact with the backend services.
- Built out a Windows tablet app proof of concept, that could communicate with several custom pieces of hardware.
- Data Science
- Built out a prototype system for analyzing user purchasing habits and was able to identify several actionable features in the data.
Director of Development at Broadcast Interactive Media (Madison, WI, USA), May 2008 to November 2013
Oversaw all aspects of our coding processes. These aspects included:
- System architecture design
- Vendor and software evaluation and integration
- Diagramming with UML
- Overseeing code quality
- Writing language-specific coding standards
- Code review
- Platform development
- Building out a stable platform for developers to rely on
- System analysis
- Prepare operation reports to focus on cost savings and performance optimization efforts
Web Designer at UWEC College of Business (Eau Claire, WI, USA), May 2005 to May 2008
I worked as the main web developer for the University of Wisconsin Eau Claire College of Business website. I primarily used HTML, JavaScript, CSS, and PHP to accomplish my duties.
Web Designer at WEBteam Inc. (Eau Claire, WI, USA), November 2007 to April 2008
I worked on a variety of customer-facing commerce, promotional, and corporate sites using PHP and MySQL.
Education
University of Wisconsin - Eau Claire, Eau Claire, WI, Bachelor of Science in Applied Physics (minor in Mathematics), 2008