Hey! I'm Bernard.

My friends call me Bernie - I'm a frontend developer by day, and an aspiring code god by night.

I'm currently professionally focused on frontend development, but my skills don't end there. When I have free time, I like to tinker with hardware (arduino/micropython), backend development (supabase), systems development (rust), 3D printing, design, poetry and music. I've recompiled my 3D printer's firmware too many times to count at this point.

I have an incurable curiosity for technology and a passion for building things that people like using.

Tools I like using:

  • TypeScript
  • JavaScript
  • Vue
  • NuxtJS
  • React
  • NextJS
  • PHP
  • Laravel
  • WordPress
  • CraftCMS
  • Git
  • GitHub Actions
  • GitLab Pipelines
  • AWS (S3, ECR, ECS, SSM, SES)
  • Docker
  • Kubernetes

Things I've done:

Over the last decade I've had the opportunity to work on some amazing projects in a variety of industries. I've worked in Renewable Energy, Telecoms, Advertising, and Finance! Come with me to see what I've done over the years.

Postcode Loterij

(link)
Frontend Developer (Dec 2025 - Present)

Personal

Full-time Tinkerer (Apr 1993 - Present)

I tend to build stuff in my free time and I have made some things that I am proud of.

Final Words

Some close friends got together and thought of a way to remember their lost loved ones, Final Words was the answer. A platform to remember those you love, built by a family that want to cherish their own lost loved ones.

I built and maintained this platform from 2024-2025. Initially I was the sole developer on this project and onboarded a friend to help out with delivering new features.

Challenges

This was the first time I had worked with Laravel Livewire, Stripe integrations and building a fully blown e-commerce website from scratch - so it was an interesting journey to go from zero to hero.

Impact

Built an MVP in less than a month, and rapidly moved to a working product that we were happy with.

Tools:

  • Laravel
  • Livewire
  • AlpineJS
  • PHP
  • Tailwind
  • Stripe
  • Appsmith
  • Figma
  • Coolify
  • Docker

This Portfolio

I started working on this in late-2023 while seeking employment, and finished the designs in figma. For about a year I just had a URL link straight to the figma prototype. I decided to finish it off in 2025 after having a lot of pressure to find a job in a small amount of time.

Work ShowcaseWork ShowcaseWork Showcase

Challenges

Obtaining all the visual assets for past projects is a real pain - if I could give any designer/developer advice; make screenshots of your work!

Impact

Have a look at the analytics

Tools:

  • NuxtJS
  • TypeScript
  • Tailwind
  • Figma
  • Coolify
  • Docker

QRky (WIP)

QRky.app is a QR Code Creation platform for everyone that boasts URL shortening and visitor tracking to ensure your traffic ends up in the right place.

While I was on an extended vacation I needed something to keep my hands busy, so I started getting to work. By using Supabase, DaisyUI and NextJS I was able to move quickly and get a working MVP up and running in less than 5 days.

Challenges

I used this project as an excuse to learn how Supabase works, as well as something that could integrate into my other projects. I also gave myself a short timeline so that I could start and finish this while I was on vacation.

Tools:

  • Supabase
  • NextJS
  • React
  • Typescript
  • Tailwind
  • Figma
  • Coolify
  • Docker
  • Stripe

TF2048.io

From 2020-2021, I built all the tech for tf2048.io - an Ethereum NFT collection of algorithmically generated 3D robots. Set in a parallel 90s timeline, machines built by humans seized control, then crossed into our 2024 to “invade” as collectibles. We built the backstory, website, contract, and mint flow so the narrative, the interface, and the on chain logic speak the same language. Every touchpoint reinforces the idea that these bots arrived here by design, not by accident.

Challenges

Learning to navigate the Ethereum ecosystem in the pre-LLM world while building a solid narrative for this project was a huge challenge, but it was the most fun I've had building something with friends. We ultimately were not able to market our project well, and missed the wave completely. In hindsight, probably for the best.

Tools:

  • NuxtJS
  • JavaScript
  • SCSS
  • Laravel
  • PHP
  • Figma
  • Git
  • Coolify
  • Docker
  • Solidity Smart Contracts

bunq

(link)
Frontend Lead (Jan 2024 - Sep 2025)

bunq is a European neobank that offers a range of personal and business banking services, including accounts, cards, and various financial management tools, with a focus on user-friendliness and international travel.

I grew the frontend team by over 50%, addressing a general lack of capacity that enabled the delivery of larger features, and tackling of more technical debt.

bunq Web

bunq Web is the main web application that bunq customers interact with on a desktop or laptop. It serves tens of thousands of users from all across Europe and had to be compliant with PSD2 standards, as well as adhering to the PCI-DSS standard.

Challenges

Balancing prioritization of delivering new product features and addressing technical debt was a major challenge for this ongoing project, especially considering it was written in a completely custom, in-house framework.

Impact

  • Improved security and PSD2 standards.
  • Delivered a multitude of product updates and bug fixes over the course of 20 months.
  • Maintained and improved the developer experience of the project for a team of 7 engineers.

Tools:

  • React
  • Playwright
  • Vite
  • Vitest
  • TypeScript
  • PHP
  • GitLab
  • GitLabCI
  • Figma

baraka

(link)
Senior Frontend Engineer (Apr 2022 - Dec 2023)

baraka is an investment platform that empowers it's customers to make informed and strategic long-term investment decisions.

I was the sole Frontend developer in the company, and built or improved all of the internal and customer facing web interfaces.

getbaraka.com

I was tasked with keeping getbaraka.com up to date with the current brand direction and ensuring it is usable, performant, and easy to maintain.

I led a complete rebuild of the WordPress based Frontend to a component based NextJS website. Content is fed in from the same WordPress instance that had been the website, but now acted as a headless CMS.

Work ShowcaseWork ShowcaseWork ShowcaseWork Showcase

Challenges

We had a very short deadline for this project so the main threat to this project was time. Also, we had no design system in place for the web. So I worked closely with the designers to make one that worked well with our brand and was easy to understand and maintain.

Impact

Between 2022 and 2023 we completed 2 Website redesigns, each of which the development was completed in just under a month. Along with these redesigns, I also

  • Reduced time to publish for the content team.
  • Lighthouse scores went from below 80% up to +90% across the board.
  • SEO was improved.
  • Feedback + development + deployment workflow was improved.

Tools:

  • NextJS
  • React
  • WordPress
  • TypeScript
  • PHP
  • Docker
  • AWS S3
  • Kubernetes
  • Git
  • Github Actions
  • Figma

Baraka Hub

I was tasked with taking over and applying a redesign of our back-office administration dashboard.

I created custom components that align with the new design, which was based on internal research identifying team struggles. To keep timelines short, I reused the existing component library, and added custom CSS and business logic to align it to the desired designs.

In cases where components did not exist, they were created from scratch for that specific task.

Work ShowcaseWork ShowcaseWork Showcase

Challenges

The platform was lacking a lot of documentation and there were parts missing from the new designs. This came up during testing and after launch where I had to make several last minute additions. This was a good challenge as I had to work closely with our customer service agents to tend to their needs and build out parts that were needed.

Impact

The UI was originally cluttered and everything was loaded on a single page with hard to navigate tabs and lacking a consistent design language. I helped standardise the design and build reusable components that helped in speed of creating new features. The enhanced app also helped:

  • Customer service and operations teams are able to process and screen new customers faster.
  • Customer information is easier to find.
  • Customer problems are easier to diagnose and resolve.

Tools:

  • NestJS
  • Angular 13
  • TypeScript
  • Docker
  • AWS ECS
  • Git
  • Github Actions
  • Figma

Akhbarka Newsletter

I was tasked with taking the incomplete newsletter platform and pushing it over the finish line. Beyond that, my job was to maintain the platform to allow the internal content team to deliver a high quality daily newsletter, and also provide any visual updates that will keep daily communications in line with our brand.

A single development sprint was completed in 1 month to test and finalize the full-stack platform. This included an emergency pivot to a different email delivery service just after the sprint was concluded.

Work ShowcaseWork ShowcaseWork ShowcaseWork Showcase

Challenges

This project was started and abandoned without any documentation. It was a huge challenge to get it off the ground and sculpt it into something that was usable.

Impact

The content team was very happy because we could now accommodate their requests for custom features.

  • The content team has more freedom to create a more informative newsletter.
  • Internal UX issues are resolved faster than before.
  • Over 2022 and 2023 I completed 3 newsletter rebrands and restructures.

Tools:

  • NextJS
  • React
  • TypeScript
  • Sequelize
  • MySql
  • Docker
  • AWS ECS
  • Git
  • Github Actions
  • Figma
  • Mailchimp
  • Clevertap

Afrihost

(link)
Frontend Team Lead (Oct 2020 - Apr 2022)

Afrihost is a South African internet service provider, providing a number of services, including fiber internet, fixed wireless, mobile services, VoIP, and web hosting.

I was part of the Brand team responsible for managing all customer-facing pages, emails, and campaigns, which contributed to winning multiple ISP of the Year awards.

Campaign & Product Pages

I was responsible for building unique NuxtJS pages with custom components and designs for each unique product that Afrihost offers. These pages are deployed on bare metal servers via Laravel Forge.

Challenges

The designs for each product were unique and required a new approach for each build. This made it challenging to reuse components, but I worked closely with the design and UX team to extract all reusable colours, styles and components to make it easier to deploy.

Impact

An increase in user sign-ups during campaign periods. Better customer trust for specific demographics.

Tools:

  • NuxtJS
  • VueJS
  • JavaScript
  • SCSS
  • Sketch
  • Git
  • Laravel Forge

Customer facing emails

I was challenged by the design team to modernize our newsletters and transactional emails. The designs were directly modeled after our main web page designs and made to look better than any other ISPs emails.

Work ShowcaseWork ShowcaseWork Showcase

Challenges

Mail clients are inherently challenging to work with, so we had to do extensive testing and iteration to ensure that our modern designs were working correctly on as many popular email clients as possible. Additionally, we had to ensure that we didn't exceed strict, self-imposed file size limits. This required a very intentional and strategic use of images.

Impact

We elevated newsletters and transactional emails to fit within the company brand, ensuring they appeared modern while maintaining email standards.

Tools:

  • MJML
  • Sketch
  • Gulp
  • JavaScript
  • Sketch
  • Git
  • Sendgrid

On-page sign-up

I was tasked to build a uniform sign-up experience that can be reused across multiple product sites and multiple domains.

We developed a single VueJS package that could be imported into any of our NuxtJS based landing pages and apps. This package is completely configurable to cater the specific product, theme, and flow it is placed within.

Work ShowcaseWork ShowcaseWork ShowcaseWork Showcase

Challenges

With a large variety of different product offerings and sign up flows, it was challenging to make them all responsive and easy to use across every device. Another challenge was that many of the APIs this form interacted varied significantly, which required a great deal of collaboration across different teams.

Impact

  • An uptake in user sign-ups due to the ease of use, and not having to redirect to a customer portal.
  • A more consistent and smooth experience for the customers fostered a sense of brand trust.

Tools:

  • VueJS
  • JavaScript
  • SCSS
  • Sketch
  • Git
  • GitLab packages

TBWA

(link)
Frontend Developer (Aug 2017 - Oct 2020)

TBWA is an international advertising agency that works with major brands. Their goal is to make brands part of cultural phenomena and keep these brands top of mind in the general populace.

I was a part of the digital team that delivered ad assets for 5 major brands in South Africa. I helped build an innovation hub where we encouraged creatives to think outside the box and develop their digital ideas.

BlameNoMore

I was briefed to take award-winning designs and make them an interactive reality.

I delivered a custom-built, native HTML and JS single web-page with interactive elements that elevated the already great designs.

Work ShowcaseWork ShowcaseWork Showcase

Challenges

The page was only designed for desktop and in a very static format, so I had to work closely with the designer to make sure it was engaging in a way that enhanced the overall campaign.

Impact

Added to the entire campaign that won multiple design awards.

Tools:

  • Vanilla HTML
  • JavaScript
  • SCSS
  • Illustrator
  • Indesign
  • Photoshop

DOOM.co.za

I was part of the development team that showcased the entire DOOM product range in an engaging way.

We developed a self-hosted WordPress site that served as a headless CMS paired with a frontend built in Angular 2. We ensured that content creators could easily keep content up-to-date in a straightforward, and well-known interface.

Work ShowcaseWork ShowcaseWork ShowcaseWork Showcase

Challenges

This was my first project working with any reactive frontend framework in a professional setting. I had to learn fast to make sure we could hit deadlines, which we did.

Impact

This effort resulted in an award-winning design brought to life.

Tools:

  • PHP
  • WordPress
  • AngularJS
  • Illustrator
  • Indesign
  • Photoshop

EDSystems

Developer (Jan 2016 - Jul 2017)

ED Systems was a software development agency that transformed clients' ideas into reality through software.

Here, I had the opportunity to work with clients who had incredible ideas, and I not only developed software for them but also helped build their businesses. Many of the solutions required copywriting, design, asset generation, and video creation.

Literally just the content