Curriculum Vitae

Profile

Name: Walter Schreppers
Birt date: May 13th 1976
Nationality: Belgian
Marital status: Married to Carmen Alvarez in Edegem on 2012/07/07
Spoken languages: Dutch and English fluently.
French and spanish enough to follow simple conversations.
A tiny bit of German as well
Professional since: 1998

Software Engineer, R&D contractor, Entrepreneur

Keywords

  • Analytic
  • Driven
  • Creative
  • Loyal
  • Persistent

Personality

Walter is a very precise person who pursues high quality in his work. With the right knowledge and attitude he's a good asset for any company. Due to his busy life he can be hard to reach or be sloppy with paperwork but he'll always do his best to meet tight deadlines.

Walter can get impressive results from undocumented libraries. He's very proficient in creative thinking. Together with his persistent full drive he's able to tackle the most challenging problems.

In his way of working he shows that he looks beyond the task given by making it fit in the bigger picture. He'll properly test and document code in the extent that time and budget allows. He cares about people and is thereby a great team-player.

Education

School Type Grade Level Remarks
Zoetermeer, Purmerent and Amsterdam Elimentary schools (Holland) Public education 1st to 3rd grade Elimentary school
Oosterloo lagere school (Belgium) Public education Belgium 3rd to 5th grade Elimentary school
Five Forks middle school (USA/Georgia/Gwinnett County) Public education USA 6th and 7th grade Middle School Parents moved to USA. Learned english enough to go to a normal public school during summer vacation prior to moving. Was allowed to skip to 8th grade maths and had straight A's 2 years in a row.
Sint-Aloysius College Geel (Belgium) Public Education Belgium 1st to 6th grade High School: Modern Sciences and Mathematics Parents moved back to Belgium. Still was in top 5% of my class except for my last year due to a snowboarding accident which nearly killed me. Luckily all went well: I survived and recovered from a hip fracture and other nasty injuries. By the time I went to college I was fully recovered and even skateboarding & snowboarding again.
University of Antwerp (Belgium) College Master in computer sciences MsC Degree achieved with honours
University of Antwerp (Belgium) College PhD in computer sciences PhD Journal publications and some nice results achieved. However did not get the opportunity to defend my title. So it's just plain Walter, not Dr. Walter ;)

Training and experience

Product related Type and level
Implement own language compilers in C/C++. Reverse Engineering of Matlab Compiler (cross platform development in C++&Qt). Software Engineering Unit/Regression testing practica given at University of Antwerp. During PhD
Capita selecta AI. Practical course given on AI techniques for instance maze solving with mindstorms using java. During PhD
Python SWIG, ruby, perl + studied compiler implementations for implementing Multprecision Lab and precompiler. During PhD
Qt, WxWidgets, VBA, Access, Java j2see, GUI building, STL, Boost During PhD / Self taught
Ruby On Rails, Ruby Sinatra, Python Flask/SqlAlchemy, AngularJS, jQuery, VueJS, ionic, Python Starlette, OpenGL, WebGL. Professionally as contractor
MySQL, PostgreSQL, Oracle Professionally as contractor
NginX, bind, postfix (met DKIM), and other various *nix components. Docker and CI/CD with gitlab, jenkins CI/CD Professionally as contractor
Javascript: AngularJS, VueJS, node.js, ionic (hybrid android+iphone apps including custom components in Objective C and java respectively). Recently some React.js as well Professionally as contractor
Atmega (328, 32u4, 1284p, ...), Microchip (PIC16F877A, ...), Espressif (ESP8266) microcontroller firmware development with gcc cross compiler and various electronics projects done over the years. Also like building/creating my own 3D printers, custom IOT devices to control central heating and other appliences in my house etc. Also used and worked on linux embedded devices like the raspberry pi, EZMoto and VIU2 to create various IOT devices professionally. Hobby & Professionally

Knowledge Matrix

Programming languages Level
Ruby, Python ***
C & C++ ***
Java and PHP **
Crystal-lang, Objective C, Perl **
Matlab, Octave (implemented own compatible parser&compiler dubbed MPL) ***
Javascript (jQuery, Vue.js, AngularJS, nodejs, React, ionic, cordova, ...) ***
HTML, CSS, JSON, XML (wrote own custom xml parser when expat was cross- platform yet and it was 400% faster than Qt's implementation). ***
C#, ASP.net, Smalltalk *
Visual Basic, Access **
Bash, ksh, sh, zsh ***
Turbo Pascal and some ASM during the late 90s ***
Wsbasic (my own educational open source parser written in C++). Kturtle was derived from this (official ubuntu package now). ***
Haskell (also recently used in 2018 with GraphQL/Hasura) **
Operating systems developed on Level
Linux: Debian, Redhat, Ubuntu, Slackware, Gentoo and OpenBSD ***
Android and android development using sdk & kernel level(see AT&T APM) ***
Microsoft Windows Server 2000, Windows 95, Windows XP, Windows 10 ***
macOS ***
IPhone & Android app development (mostly hybrid using cordova+angularjs and/or ionic framework, but also some native experience in java on Android) ***
Tools, Frameworks, Compilers and IDE's used Level
Boost C++ libs, STL ***
Qt (trolltech GUI cross platform), WxWidgets (OSS GUI cross platform) ***
Gnu g++, MinGW, AVR-GCC, LLVM c/c++ ***
Python web development : Flask, sqlalchemy, OpenCV, Starlette, and many pip packages... ***
Ruby web development : Rails, Sinatra, and many gems... ***
Docker : at last three companies for CI/CD but also for deploying and developing my own webapps in a lightweight Alpine Linux. At VIAA we use it with OpenShift ***
PHP web development (mostly during the 90s. Used object oriented programming, no real frameworks apart from the built in php functionality) ***
Javascript frontend development : AngularJS, ionic, jQuery, Vue.js ***
Javascript backend development : node **
Javascript frontend with React (learning currently) *
Inkscape, Gimp (OSS versions of Photoshop and Coraldraw) **
.NET C++, C# and mono, MFC *
NginX, Apache, Unicorn, postfix ***
Bind/DNS ***
Rational Rose, Umbrello, UML **
MS Visual C/C++ & OpenGL (alsook gcc/OpenGL). RayCaster Implementate naar RayTracer omgezet met live OpenGL previews. ***
Assembler and Turbo Pascal in the 90s: made a lot of mode 13h gfx demos and 3d engines from scratch. ***
vi, vim, neovim (my daily editor) ***
Visual Studio Code (when I need some linting) **
Android Studio **
macOS Xcode (only for doing releases of iPad & iPhone apps). For native applications on macOS I mostly use Qt framework & LLVM C++ compiler directly **
Arduino IDE sometimes used (but mostly avr-gcc directly with a proper makefile) ***
Methods and practices Level
Object Oriented, Test Driven (unit, regression, functional) ***
Design Patterns, Aspect Oriented ***
RESTful Design, DRY, KISS, DSL, DSP ***
Levels * = Basics ** = Experienced *** = Senior


Work Experience I

Period 1998 student job Business Solutions (2 months)
Project Implement a cash register system in Access/VBA (and learned vba in the process)
Job title Developer
Operating System Windows 95/98 and NT
Frameworks used Microsoft Access
Work done Job student during bachelor years with a company called Business Solutions (was a small startup nearby my university). I was already pationate about Linux and Open Source but job market was not ready for it at the time. So I did visual basic and access work to make some extra money for spending around during my college years. Later also stayed a bit longer in academic world for the same reason that linux and open source was much more embrased and adopted there. Luckily by now the belgium's professional software market has also shifted to this course.
Period 2001-2007 Universiteit Antwerpen
Project Multi Precision Lab (Matlab compatible multi precisie reverse engineered IDE) for the CANT research group.
Job title Main Developer and Software Architect for a custom programming language and IDE called Arithmos implemented with C++/Qt/MinGW, PhD. Student (unfortunately never defended title).
Operating System Developed on Linux, macOS and some Windows 9x, Windows XP (cross-platform code base)
Frameworks used C/C++ (gnu, MinGW and MS VC), Qt (GUI), web client with sockets in PHP connected to c++ threaded server for a web-interface. OpenGL graphics for Jeff Tupper engine and other simulations. Matlab, Octave, Python studied at language implementation level to derive/reverse engineer a Matlab compatible compiler suite called MPL. Also active in some other open source projects like kturtle on ubuntu, a custom xml parser (that was also used for my c/c++ precompiler to translate Gnu Scientific Library code).
Work done

Maintenance and grouping of in-house multiprecision libraries Rational, MpIeee and an exact plotting library of Jeff Tupper into our own GUI and programming IDE dubbed MPL (former Arithmos).

A lot of effort in reverse engineering Matlab was done by myself in order to run matlab compatible scripts on my own compiler and IDE using multiprecision instead of the standard float/double precision. I had my own matlab version written which was much like the Octave project which started during my second year as PhD candidate at UA.

My own implementation of matlab using n-tree traversals and simple garbage collection using smart-pointers (nowadays a lot of that work would be easier using LLVM) was at that time ahead of the competition in matlab compatibility. But because it had to remain closed source due to the nature of my PhD grant or rather the decisions made by my research group, I was pretty much on my own to to remain ahead.

This did improve my knowledge of how to write cross platform interpreters and compilers and c++ a lot, but it became apparent we needed to go open source or the project would perish. Seventy hour coding weeks got me far but in the end could not match the workload that an army of volunteers brings to an open source project like GNU Octave brought to the table. Inevitably a few years later this resulted in MPL getting behind in completed features.

Also some teaching was done by myself: practica for C.S. Artificial Intellegence and Software Engineering (testing) which were mostly given using java and c++.

Work Experience II

Period 2009 - present day
Projects Various in-house web and hardware applications for SIT
Job title Founder, company owner
Operating System Mostly my software is written to be run on Linux (Debian, Ubuntu, Gentoo) and macOS. ARM, atmega and other micro controller embedded based development happens too (espressif esp8266, etc.). And sometimes even Windows development is done: for instance recently the Anykey configurator desktop application was completely ported to windows 10
Software and frameworks used Way to much to all list here, but some of the more frequent ones used include: Ruby on Rails, Puma, NginX, Bind, Postfix, MySQL, avr-gcc, Geovision. C/C++, bash, wsbasic, ksh, ruby sinatra/metal. Python flask, starlette, OpenCV, nodejs, angular, ionic, vue.js, ...
Work done

Build various in-house applications and components for webshops, dynamic dns for CCTV. Rails embedded/arm projects like web-based thermostat for iphone (way back when there were no commercial ones to buy). Also prototyped, patented and now produced + selling usb hardware key called AnyKey. Firmware was re-written various times in c++ and webshop was done inhouse (https://www.anykey.shop).

Also do smaller pet projects like 3D printer control using nodejs before octoprint existed. Play with various new languages and frameworks for self educational purposes. For instance now doing some crystal-lang work to see if it has future. In the past experimented with other javascript frameworks like meteor before settling on Vue.js and AngularJS as my 2 favourites. Ofcourse plain vanilla javascript and jquery still have their places too (it all depends on what is required to be done and how the other developers choices and progress has been in the past within a project. Good example is webturtle done in 2020 during my holidays as pet hobby project: it's pretty much mostly vanilla js that calls some phaser.js api calls. It's done without jquery or angular or react. Except for the code editor used which has a dependency on jquery, it pretty much runs on all modern browsers with plain vanilla js. I also run my own dedicated linux servers on hetzner since the early 2000's.

Period April 2011-October 2012
Projects VIU2, Xyfi, APM
Job title R&D contractor work at OPTION NV
Operating System Linux (Debian, Ubuntu, Gentoo), macOS, ARM based linux, Buildroot, OpenWRT
Software and frameworks used Ruby on Rails, Passenger, NginX, Apache, Bind, Postfix, MySQL, avr-gcc, C/C++, bash ruby sinatra/metal, lighthttpd, jQuery Mobile, jQuery, Python twistd, Oracle db's.
Work done

VIU2: a new 3G security camera with linux based firmware. For this project I did some kernel driver c embedded work to implement image flip 180 degrees with 20fps h264 hardware. Further did a lot of server side work. They initially hired me to improve a buggy php project. But luckily I got the chance to convert it all to ruby on rails by promising a rewrite in the same time they estimated the bugfix period. I met my deadline and they were so impressed I was allowed to use ruby for various other projects at Option NV. We did a JSON api with ruby Sinatra for android and iPhone apps of Viu2. OTA firmware updates and also other ruby on rails projects for managing the VIU2 cameras in the wild.

Xyfi: Worlds smallest wifi router/hotspot in a usb stick. Here I was employed to get the web interface ready for release (jQuery GUI, LightHttpd and cgi app on OpenWRT firmware on the key).

APM: Ambitious project with AT&T to do traffic monitoring and traffic shaping by running software embedded on each android device. About 2 million devices in the field. Server side we used python twisted due to reactor pattern (basically what nodejs/express is all about these nowadays). We had 8 dedicated servers and a machine learning app on the device side to allow traffic shaping to be done on the AT&T network).

Work Experience III

Period December 2011 - Februari 2012 (part time and weekend work because on weekdays I was still working for Option NV, see above)
Project http://www.biedmee.be and later on moved to http://www.holidaysbay.be
Job title Implement auction site from scratch for vacation events and holidays (similar to ebay or booking.com)
Operating System Developed on macOS, deployed on debian linux webserver at hetzner.
Frameworks and OS software used Ruby on Rails, Passenger, Apache, MySQL, postfix
Work done Worked independently in my spare time (during weekends and holidays) on a Rails app for e-bidding on short weekend trips and holidays (inception alert ;) ). So an e-commerce app that does something similar to booking.com but on a bit smaller scale. Still 30 seperate companies could login and provide various holiday offers and we quickly got to 4500 customers and 10k Euro in voucher sales during first months of release. We had a mailing daemon, paypal IPN and regular bank transfer integration. Full CMS backend + automated invoicing and generation of PDF vouchers all implemented from scratch using Ruby on Rails, jquery, and some caching with Dalli/Memcached to make it all performant. Incidently a lot of the code here was re-used and refactored later on in other jobs for PlayPass NV and Option NV as well. If you've already written something once, the second time is always faster even if you don't do a literal copy and paste it's still going to be verry similar if you're working in the same language and framework. Generating a PDF for a holiday voucher or for a festival ticket is technically basically the same thing in programming efforts...
Period October 2012-Augustus 2013
Project Getin and Kiosk (or brand activation apps): Crew/crowd software used by most big music events in Belgium and later on world wide like: Werchter classic, boutique, Rock Werchter 2013, the wall & Graspop 2013. We also pioneered RFID wristbands used in crew and crowd validation and provided cashless payments. Project also used in Sportpaleis antwerp for ticketing and crowd entrance.
Job title R&D Contractor and full stack developer
Operating System Linux on Ledato & raspberry pi used on IOT devices/clients and also debian linux on dedicated server side communicating with rails api
Frameworks used Ruby on Rails, Unicorn, NginX, Apache, Bind, Postfix, PostgresSQL, java RFID Nordic NUR05 drivers, C/C++ visual studio apps for hiding start and switching apps at kiosks in windows 8. Java, c++ and some bash on client side (raspberry pi with gpio's attached to relays). Jquery + bootstrap + Facebook OpenGraph server side.
Work done Contractor at Playpass. Worked first on a large crew/crowd Ruby on Rails based platform for managing logistics of large festivals. Later on prototyped new rfid hardware based onn raspberry pi to give users a connection with Facebook Wall using the GraphQL of facebook we allowed users to scan and post on facebook using sharepoints (scanners scattered around the area). We also had scanning for merchandising and all the scanners were connected using a rest-api developed for this. We also had touchscreens for giving freebees and doing various things like guessing games to win prizes on the festival all prototyped and deployed by myself. The bigger crew/crowd part was co-developed with 3 other developers one of which was the CTO. So basically a multi million dollar company was created using 4 hard working developers in less than one year from winter 2012 to summer in 2013 ;).

Work Experience IV

Period November 2013-May 2015
Projects Started on some ERA brokery site maintenance (eratools.be) that was made with symfony/php (similar MVC framework as RoR but with php). Did a quick and dirty iphone+android backend api as a promotional stunt for GasAPP and landed us in newspapers. After that stayed many more months implementing iphone, ipad and android applications: Market analysis ipad app for ERA. MedicalChain (android app hybrid with angularjs). BadgeControl Checkin and BadgeControl project leader apps with ionic and these were relased for iphone, android and ipad. They we're however only released in-house with HockyKit and testflight due to b2b nature of the apps. Then worked on prototyping and production release of BadgeControl hardware scanpoints (linux embedded work but also helped with electronics prototyping). The during last month started on new app for Vavato.com (tinder like swiping but then for cars). This was however never finished due to missing payments from Rombit (to this date the only company that did not pay my invoices for completed work in the past decade).
Job title R&D Contractor / full stack developer
Operating System Linux on EZMoto + raspberry pi. Android & iOS
Frameworks used Ruby on Rails, Unicorn, NginX, Apache, Bind, MySQL, C++ linux embedded en c++ op freescale cpu voor led software. AngularJS, MeteroJS, NodeJS, Ionic, Cordova, a little of PHP symfony also if they really insisted (sorry still don't like that framwork and probably never will ;))...
Work done Various prototypig projects and reverse engineering done for the scanner/camera LV3080 of badgecontrol scanpoints. For the rest mostly android and ios work on various iphone and android applications: MedicalChain, BadgeControl, Eratools, MarktAnalyse iPad apps and my last project was working on a ionic app for Vavato.

Also wrote a custom angularjs directive (widget/gui component) to do the calendar planning of badgecontrol.com and various other smaller projects whenever Rombit needed it. For instance we did the GAS fine app (gasboetes) in 2 weeks that connected with a ruby on rails json api (I wrote and was able to introduce rails for this pet project but due to other developers favoring php/symfony it was unfortunately not adopted in other backends). Even though it proved faster in both development time and in performance compared to their existing php symfony components. I heard somewhere they switched to java spring by now though ;).

Work Experience V

Period June 2015
Project Gamebus backend & API
Job title R&D Contractor TU/e
Operating System Linux, macOS X
Frameworks used Java spring, hibernate, lombok (backend json api for ios and android apps that are now released in stores)
Work done

Short assignment of 2-3 weeks with old colleague from University of Antwerp (Pieter Van Gorp). He's now professor at TUE/e (University of Eindhoven) and needed to get his backend for a project called GameBus developed. He wanted the implementation in java so I set up 20 resources using Java Spring and connected to postgres using Hibernate ORM. Using lombok for code generation this was pretty efficient. For authentication/jwt token generation I used a small rails app to provide a login screen during the last day (due to time constraint I reverted to my favourite framework ;) ).

Period June 2015 - Juli 2015
Project Televic Video Conferencing prototype on raspberry Pi hardware
Job title R&D Contractor for Televic
Operating System Linux raspbian on ARM (raspberry pi)
Software used G++ and various raspberry pi resources around h264 and video encoding/decoding
Work done

Short assignment of few weeks to study/prototype a raspberry pi and see if it could replace the current video conferencing hardware used. Got to a working version with h264 codec but they had settled on the (inferiour) mjpeg coded for transferring video. My opinion was that they could and should switch the other components to h264 also. They had other congestion issues arising from sticking to the antiquated motion jpeg video format. Furthermore using mjpeg on raspberry pi was slow/choppy with video playback, even on an utp connection. Whereas the h264 with the dedicated decoder allowed butter smooth 25fps video over regular wifi. So basic conclusion mjpeg on the Pi2 was pretty much a no-go unless you'd spend (or rather waste) a lot of development time in optimising for an antiquated codec.

Work Experience VI

Period December 2015-August 2017
Project www.antser.io
Job title R&D Contractor / full stack developer on Antser project
Operating System Linux debian
Frameworks used Python flask & sqlalchemy backend, AngularJS on frontend.
Work done A lot of angular JS frontend work but also worked on the Chat engine with websockets in python/flask. And later on also worked on the main backend/json api which also ran on python/flask/sqlalchemy + celery. Antser is a big project, basically a mini framework on it's own right. With embedded scripting, custom form builders, communication matrices giving dynamic permissions and alerts+notifications that are all dynamically configurable: You can build your own custom B2B apps within the antser system with minimal programming experience. We worked with SCRUM here and mostly 2 week sprints. Fully automated deployment (test, dev, staging and production servers). Servers deployed using docker image and rebuild after each commit (development branch->dev server, master->staging, only a manual deploy initiated for master branch->production). Automated tests in frontend with protractor. Backend code with py.test/mock.
Period September 2017-December 2017
Project Airshaper.com
Job title Full stack developer & architect for creating the first fully working beta of Airshaper.com
Operating System Linux debian, macOS, Google Compute Engine
Frameworks used Ruby on Rails, some python and jquery. Google GCE's and associated API's. Sidekiq background processing. SSH tunnels and scripting also used in sidekiq workers.
Work done Starting and managing Google Compute Engines using sidekiq on a ruby on rails app written from scratch in 3 months. Each simulation starts it's own GCE instance and does a long 24hr calculation to generate a PDF with aerodynamic results of uploaded 3D stl file and given wind tunnel parameters. These GCE's are orchastrated by doing rest api calls to the huge google api provided for this (it was a lot of lookup work and reading to know what to call in what order to automate the process of starting, stopping, creating GCE's automatically).

In a nutshell: this allows for large scale CFD computations to be done using Google Compute Engine virtual machines and the only limitation to processing power is the amount of funds available to pay GCE instances. The web app also had the usual features like keeping track of all users projects, users and user credits for this system and auto email PDF reports from aerodynamic simulation results. Users can upload 3D stl files, view them realtime in a viewer and then select options for the simulation type (set windspeed etc.) after the calculation on a seperately started GCE this GCE is auto shut down and the results are downloaded to the main server and also presented as a PDF summary report that is emailed to the users. (All work was done in 4 months and just 3 days per week for writing the whole system from scratch to a working prototype with all functionality and 4 project workflow redesigns along the way ;) ). It did need some further css styling and finetuning of the config files for higher loads, more automated tests and most likely moving some more stuff to background tasks. But the prototype was delivered and working completely: from uploading a basic stl to a finished simulation result PDF including all above described features and with working email notifications.

Work Experience VII

Period March 2018 - October 2018
Project Worked on smaller parts of various large Engie ETS projects
Job title Full stack developer / lead python developer
Operating System Linux debian & macOS
Frameworks used Python flask, sqlalchemy, pandas and other various python packages. Redis, postgresql, nginx, etc. Vue.js on frontend work.
Work done

Worked as senior/lead developer in ETS group at Engie. Communicate with various api's for aggregating windmill and other renewables data from engie. Arkona, Metologica, Day ahead include some of the api's used. Various workers implemented in something called 'octopus project'. Also wrote some screen scraping for migrating data from pipedrive to a different system in python using a headless chrome extension to get into the pipedrive systems because the api did not expose all data (extracting emails, attachments and deals json data). Various improvements in large flask based application called b2e2 (back2earth) for managing energie contracts, sites and servicepoints.

Visual Graph generation of database structure using pygraphviz made to work inline in b2e2. Maintenance and curtailment management using vue.js frontend and flask rest-less api. Some standalone clients written like meteologica- client.

On frontend side did some Vue.js/nodejs frontend work in this context, optimising various pages and creating some overview graphs for maintenance events on etc.

Very strict development using TDD, code reviews and continuous integration.

Period November 2018 - June 2020 (present day)
Project VIAA avo API and Elastic Search Indexer, LDAP-SSUM, S3Proxy for Video&Audio Archives, Vrt metadata microservices and more internal projects.
Job title Full stack and lead developer on various in house projects of VIAA
Operating System Linux and macOS, Docker images of the apps are deployed with OpenShift
Frameworks used Ruby on Rails, Sinatra, Hasura GraphQL (Haskell) and Python running on flask and soon most likely also the exelent python starlette framework
Work done (so far)

Indexer: A ruby on rails application that can be configured to automatically sync certain tables to an Elastic Search index. This iterates and monitors all data from video and audio archives in a postgres database. Using some api calls a batch re-index of all data can be done. Also we have postgres triggers in place with skor daemon to allow changes to propagate to elastic search after eache update/delete/create done in database on various tables. Backend in ruby on rails and sidekiq workers for larger background jobs but also for the triggers for better performance (if a lot of triggers come in the webhook gets response instantly and redis queue + sidekiq handles the actual work). In the more recent version of hasura there are now fully supported webhooks that we will probably use to replace the current postgres triggers for better roboustness. Sidekiq workers make this nicely scaleable and efficient.

GraphQL jwt authorization app: With a login page and a minimal ruby sinatra application we implemented authorization and authentication for users on the GraphQL api.

Hasura GraphQL: complete and configurable graphql app with migrations for providing the api calls for frontend team developing the websites. Work was done to integrate with the custom jwt authorization app and made docker containers for all above to deploy with OpenShift and/or any desired webserver. Also CI/CD and automated tests written and gitlab builds docker images of the 3 components.

S3 proxy: Ruby sinatra app that proxies Caringo S3 server requests to add additional functionality to the S3 protocol and allow archiving to be done and connect to in-house api's to keep track of archiving status and caching of large files exchanged over S3 for various content partners like the public broadcaster VRT.

LDAP-SSUM: Rails app that uses devise for login and registration forms and CSRF tokens. For account storage it connects to an inhouse OS LDAP server. With reCaptcha integegration to keep out unwanted registrations. This registration system is being used for hetarchief.be, and soon the new avo site used in education/schools all over belgium. Most likely many more sites in the near future will use the same pages to provide an easy way to have accounts working across different platforms. In a nutshell it's a bit like accounts.google.be but then tailored to VIAA's needs.

VRT metadata micro services: Micro services written in python with flask. One lightweight dispatcher service connects to rabbit mq which exchanges data to and from VRT for archiving media content and its metadata. This dispatcher communicates with various other micro flask apps that process the xml data and transform it into json to be stored at VIAA's data centers.