Portfolio

Strive Journal is a website and app that helps people to stay focused on their long-term goals. Set goals, make a plan, keep a journal, support others, practice gratitude, affirm affirmations, write letter to future self, and more

Web
Android
iOS

Role
Founder – 2018 to present

Architecture
Angular (Typescript, Sass, HTML)
Ionic (Cross-platform UI toolkit)
Capacitor (Native runtime for web native apps)
Firebase (NoSQL database, storage, cloud functions, authentication)
Sendgrid (email)
Algolia (search)
Imgix (image optimization)

Extra: Open Source, Monorepo with Nx, Progressive Web App, Angular Universal, Android, iOS, Docusaurus

Highlights

Rewrote the code 3 times
When I started working on this project, I didn’t know how to program. During my study I did have two classes with some basic programming with but that is it. So you can imagine that I learned a lot over time and the legacy needed to be removed, three times.

Continuous improvements
I am very grateful to have some users that provide me with genuine feedback. Usability has improved tremendously and the design is becoming more attractive. Every small improvement over the years adds up.

One of the first versions








Current version

Progressive Web App
Enabling the website to be a progressive web app meant that I could now install it on people’s phones and they had the real-app experience. This enabled me to get even better feedback from the users.

Server Side Rendering
It’s no fun to share your goals or your profile with other people if no preview of the link is shown in chat or social media apps. Also, search engines can’t index the website. The website had to be prerendered and served as an Express app. This task wasn’t a walk in the park.

Deploying iOS and Android App
Initially I chose the Ionic Framework because it got recommended to me and the website said you only need to write the code for all platforms once. Once I had a first version of the platform, I tried to create the app for Android so I could start testing with users. Quickly I came to notice that it’s hard to iterate fast with this process. I therefore chose to keep it as a website at first.

A few years later and a much more developed platform and stable database structure, I set out on the mission to make it a native app again. After figuring out how to get authentication, push notifications and more to work on native devices, it got approved by the app stores.

Cascade8 is a French startup developing B2B software for the movie industry. The company had at its high-point around 15 product development related employees. They have several applications, here are the main ones;
Archipel Market (marketplace for buyers and sellers of movies to connect and promote material)
Archipel Content (library for buying and selling movie rights)

Role

First year 100% Full Stack Developer. Followed by 1,5 year 75% Full Stack Developer and 25% Project Manager

During the first year I was working very close with very smart developers and learning a lot. As the team grew, there was more need for a Project Manager so I began to do that on the side.

Architecture
Angular (Typescript, Sass, HTML)
Firebase (NoSQL database, storage, cloud functions, authentication)
Sendgrid (email)
Algolia (search)
Twilio (video conferences)
BigQuery (SQL database)
Imgix (image optimization)

Extra: Open Source, Monorepo with Nx, dApp (Ethereum)

Highlights

Project Management
After around a year of working as full time software developer, I gained the responsibility of being the Project Manager. Within this role I was responsible for the following tasks:
– Roadmap planning
– Distribute tasks to developers
– Facilitating meetings
– Improving internal communication processes
– Enabled teams to be self-organizing
– Manage the Release Process

Analytics
I set up the base for Analytics by combining data from Firestore (database in Firebase), Google Analytics and Sendgrid in BigQuery.

Improved load times for certain in-app analytics by replacing Google Analytics with an in-house solution for the required data (e.g. page visits, attendance of promotional event)

Sanity
Keeping the applications sane was something I spent most time on. This meant that I was changing code (fixing bugs, improving performance, implementing small features) in a lot of different areas in the applications. People could always come to me if they had questions in any area of the application.

Departure

Sadly, Cascade8 didn’t manage to find profitability and to continue financing her Freelancers. They kept one developer and are now focusing on Marketing and Sales.

Thuisleefgids is a software company with the ambition to help people to be self sufficient for longer. They create several tools;
– Web shop (drop shipment)
– Tool for municipalities or hospitals to implement on their website to advice people (after injury or subsidy related)
– Acquire data about products to advice people and suppliers

At the time when I joined Thuisleefgids, there was 1 full time employee (CEO), two part-time employees, 3 interns and many friends helping out.

Role
IT Manager for about 1,5 year.

Together with the CEO, I was managing the interns, managing the friends, and customer support. When there was time left, and there was as growing a startup is a 16 hours a day job, I was improving and developing the products.

Architecture
WordPress (website)
WooCommerce (e-commerce)
Azure (SQL Database, Pipelines, Data Factory, Functions)
AFAS Software (ERP software)

Highlights

Integration between WooCommerce and AFAS Software
At first, an external party company was supposed to create this integration but after several months of back and forth, I decided to create it myself. It is still running up until this day.

Maintaining and Improving Web shop
This too was an adventure of finding the right external party to help us with this, but after several high invoices, I found a developer from India and he was doing a way better job for a lot less money.

Standardizing Internal Processes
This is especially important for content as every product used to be described differently. I researched what was the best way to describe a product and made it easy for the employees to do it this way.

Also I researched which were the best tools for Customer Support, Sales, Marketing and such and implemented them.

Setting up Analytics
Thuisleefgids has many products from many different suppliers. They collect information from the customer and test products with elderly. The plan was to collect this information and sell it to the suppliers/insurance companies/municipalities/hospitals so they could improve their service.

Together with a Data Science company, we embarked on the journey to create the base for this Data collection. To cut cost, a data scientist came over 1 day a week and I executing everything he advised. Mainly writing a lot of queries to move the data from its sources to the SQL database in Azure.

Departure

At the time when I left, the company had grown to around 5 full time employees, 5 part time employees and 4 interns. The reason of my departure was mostly due to disagreement with choices from the CEO.

AFAS Software is the company behind one of the biggest, if not the biggest, ERP application used in the Netherlands.

Role
Trainee Developer for 1 year

Architecture
VB6 (Visual Basic 6)
SQL

Highlights

Meta Programming Tool
AFAS manages many different customer environments and databases. All of the tables in each database is generated based on meta data. During the traineeship we created a tool that makes it easier for the developers to edit metadata and only generate a new database (this took ~20 minutes) if metadata was edited that required the regeneration.

Internal Business Processes
As optimizing internal business processes is the core business of AFAS, they were really good at that. Never have I seen a company better at it than AFAS, but I do try to help those companies to get better at it.

Departure

The main reason for my departure was the lack of variety in work and little challenge.