I'm a product focused Full Stack Engineer with experience in SaaS software.

Highlighted Projects

CoinBakers

coinbakers.com May 2018 - running

CoinBakers is an automated crypto trading bot.

CoinBakers App Dashboard

CoinBakers is a solo-founded sideproject that allowed me to learn Node.js, Nuxt.js (similar to Next.js for React) in ES6, Postgres, and unit- and end-to-end testing.

The front end is written in Nuxt.js (web) for SEO purposes and Vue.js (dashoard) using Vuex, Bootstrap 4, SASS, JWT, Axios, Font-Awesome (with three shaking) and Jest for testing.

The API is written in Node.js with Koa.js using an MVC structure. I use Jest for testing and use Knex as the SQL layer. Authentication is done using JWT.

The strategy, data fetchers, order executors are based on an open source project. I've separated each concern into a microservice, to make it scalable, and increase reliability. It is written in Node.js.

CoinBakers Infrastructure

Sensitive Data

Sensitive data like API keys from exchanges are stored as environment variables on each client instance, and not in the database. In the unlikely event of a database breach, we leak limited privacy sensitive data.

Admin Dashboard

The admin dashboard gives me an overall state of market and see if all services are running properly.

CoinBakers Infrastructure

Hosting & Deployment

Everything is hosted on Heroku. I use Heroku Pipelines for staging.

Vue.js Vuex Nuxt.js Node.js Postgres Redis Heroku Websockets Binance API CoinBase API Twilio API Twitter API Reddit API Stripe API CoinBase Commerce API Raspberry PI Standard Library

WeAppCare

weappcare.com 2017

WeAppCare was a B2B Enterprise AI based chat for customer service.

Based on the problem for managing massive incoming volume of chats effectively from Facebook Messenger or WeChat, WeAppCare was created to route popular chats platforms based on AI to manage volume effectively and direct conversations to the right department.

Home page

WeAppCare Homepage WeAppCare AI

Dashboard

Using IBM Watson AI we could suggest replies based on a confidence score. With auto post enabled, it would reply automatically on high confidence replies. Besides support for Facebook Messenger, Telegram, and WeChat, customers could contact and reply via SMS too.

WeAppCare Dashboard

Discontinued

WeAppCare was production ready and a project for me to learn Vue.js and using real-time data. However due to limited time while running LeadSocial, we decided not to continue as this would be a very sales-heavy product.

Vue.js Vuex Firebase i18n Multi-language IBM Watson AI Facebook API Twilio API Digital Ocean Micro-services

LeadSocial

leadsocial.com 2012 - 2017

LeadSocial was a B2B Facebook analytics reporting service.

I co-founded LeadSocial with a friend of mine. LeadSocial helped mainly social media agencies in providing in-depth analysis of their perfomance on Facebook posts. We analyzed Fortune 500 companies. LeadSocial has been louded by many customers as super easy to use and awesome eye-pleasing design.

Our main products was monthly reports and yearbooks. Both available as white label. The customer dashboard was simple and gave access to historical reports. Customers were able to create custom reports in the dashboard.

I developed the entire front-end and parts of the back-end. The reports and analysis was also designed and analyzed by me. Check the PDF examples below.

Monthly Reports

An 18-page monthly report was automatically created and sent to our customers each month. It included how the Facebook page performed compared to last month and their custom set goals. The report included KPI's for specific stakeholders/departments.

LeadSocial Executive Summary
LeadSocial Marketeer Summary

The data and results in the reports was done by going through all posts, comments (for sentiment analysis), likes, shares, and Facebook insights data through their API.

Download Example Monthly PDF Report

Yearbook

Yearbook 3 Books Download Example Yearbook PDF

Competition Reports

The weekly competition reports provided an overview in how many posts and engagement your competitors were generating. The matrix chart showed the their position based on page like growth vs share of likes.

LeadSocial Competition Overview
LeadSocial Competition Matrix

Tech

LeadSocial was developed in PHP with some services using Node.js and Gearman. We used an in-house developed MVC framework and MySQL and MongoDB as our database. I was responsible for architecting the MySQL database while my co-founder was focusing on MongoDB.

We are both full-stack engineers but I mainly focused on the business side, front-end, and products (monthly, yearly, and competition reports).

Sold

The technology behind LeadSocial was sold to a client in 2018 and discontinued as a brand.

PHP MySQL jQuery MongoDB DigitalOcean Amazon S3 Gearman Memcached Facebook API Stripe API B2B

CoreSocial / SocialCounter

coresocial.co / socialcounter.com 2011 - 2018

CoreSocial was a B2B Enterprise Social Media Management tool.

CoreSocial was rebranded from SocialCounter. This service focused on monitoring, planning, and sharing social media content to Facebook and Twitter. We ran this company along LeadSocial. Insights data from LeadSocial was used in CoreSocial, if customers used both services.

We served household names and the biggest franchises in Netherlands and Belgium. Each frachise had their own local Facebook page. The tool managed access and permissions for hundreds of local facebook and twitter pages for local franchises. This was done using fine grained user permission models.

I lead development of the core products in both front-end and the back-end. I also worked on the user permission models and onboarding flow.

The core products included composer, monitoring, and analytics section.

Compose

SocialCounter Composer

In the composer I implemented live previews that adapted to how your message would look like on Facebook and Twitter. You could schedule message to be published later. Later on I implemented real-time suggestions based on LeadSocial reports data as the user was typing their message. For example, the best times to share the messages, or to omit or add certain words.

Monitoring & Analytics

The monitoring section allowed the user to reply directly from the feed. The feed was a combined data feed from different Facebook and Twitter pages. With highlighted keyword triggers for further analysis or escalation to certain persons/teams.

The analytics section turned Facebook insights data into more human readable reports.

CoreSocial Monitoring
CoreSocial Analytics

Fine grained user permission models.

SocialCounter Permissions

Discontinued

CoreSocial was discontinued after our decision to move on after LeadSocial. CoreSocial had a grace period of 1 year before shutting down due to contracts.

PHP MySQL jQuery MongoDB Bare Metal Servers Multi-language Gearman Memcached Facebook API Twitter API B2B Enterprise

JpopAsia

jpopasia.com 2006 - running

JpopAsia is one of the largest websites for foreign Japanese music enthousiasts.

I solo founded JpopAsia. JpopAsia offers news, lyrics, music videos, and weekly charts for Japanese Pop (J-Pop), Japanese Rock (J-Rock), and Korean Pop (K-Pop) and serves over half a million visitors each month.

The database exists of over 412K lyrics, 67K videos, 63K albums, and 20K news articles. It is run by moderators in Wikipedia style, where anyone can contribute content. Everything is written in a custom MVC framework.

I did 3 major overhauls in JpopAsia's existence and have gained valuable experience in what to do and what not to do during overhauls and rebrandings.

JpopAsia Home Page

There's a lot of section where users can add and modify content. I used drag and drop to sort album tracks, save on blur, and adding tracks on the fly, to make album management as easy as possible.

JpopAsia Edit Albums

The video section deserves a little more attention. Next to the videos I have different types of lyrics. Japanese, romaji (a system of writing Japanese using the letters of the Latin alphabet), and translated lyrics. I'm proud in how I solved this all this information while still being usable. Check out this video as an example.

JpopAsia Video PHP MySQL jQuery Community Consumer