Niels Bugel

Developer by day, asleep by night

Hi there! I'm a software developer with a passion for high-performance computing, computer graphics, cleaning up software projects, and drinking water.

Photo

Work Experience

Logo

Computing Engineer: Data Storage

CERN •︎ Meyrin, Switzerland
May 2024 - Current •︎ Full-time

C++ software engineer and operations support for the CERN Tape Archive team.
Logo

Backend Software Engineer

Dataqueue •︎ Groningen, Netherlands
Feb 2024 - Apr 2024 •︎ Contract (32-40 hours per week)

Implemented, tested and deployed the backend infrastructure for a real-time call analytics software platform.

Logo

Teaching Assistant

University of Groningen •︎ Groningen, Netherlands
Feb 2019 - Jul 2023 •︎ Part-time

Teaching Assistant (TA) for a number of courses within the Computing Science programme.

Logo

Numerus Fixus Coordinator CS

University of Groningen •︎ Groningen, Netherlands
Oct 2019 - Jul 2023 •︎ Part-time

Coordinator of the Numerus Fixus procedure for Computing Science.

Logo

Full Stack Developer

University of Groningen •︎ Groningen, Netherlands
Oct 2020 - Jul 2022 •︎ Part-time

A number of positions involving web development.

Education

Logo

MSc. in Computing Science

University of groningen
Data Science & Systems Complexity
Sep 2020 - Jul 2023

GPA: 9.0/10.0 - Cum Laude

Awards & Activities:

Logo

BSc. in Computing Science

University of groningen
Sep 2017 - Jul 2020

GPA: 8.8/10.0 - Cum Laude

Projects

NITRO
NITRO

NITRO is a powerful tool for building complex image-processing routines in a non-destructive manner. The project was developed and designed with extensibility in mind, which means that it is easy to define custom nodes, data types, or even custom GUI widgets.

C++
QtOpenGLOpenCVCMakeDockerBash
Conic Curve Subdivision
Conic Curve Subdivision

A tool developed for manipulating and subdividing curves using a newly developed conic subdivision method. Its main purpose is to quickly test and prototype various different approaches.

C++
QtOpenGLOpenMPCMake
Distributed GPU Convolution
Distributed GPU Convolution

A GPU implementation of generalized convolution operators using CUDA. The framework is designed to work for large image data sets and can run in a distributed system.

C
CUDAMPIpthreadsMakeBash
GPU Catmull-Clark Subdivision
GPU Catmull-Clark Subdivision

A command line tool to subdivide meshes using a CUDA implementation of the method described in the paper: A Halfedge Refinement Rule for Parallel Catmull-Clark Subdivision.

C
CUDAMake
Cern Collision Event Visualizer
Cern Collision Event Visualizer

This website contains a simple visualization of events observed at the Compact Muon Solenoid (CMS) detector at CERN. For some time I wanted to a project with some sort of visualization component (perhaps WebGl based). When I found out that CERN has a ton of data publically available, that sparked my curiosity (naturally). As such, I decided to build this web application to visualize these collision events (because that must look pretty cool).

TypescriptPython
ReactFlaskThree.jsRedisDocker
MATIG
MATIG

MATIG is a system that simplifies the organisation and improves the efficiency of the matching procedure for several studies at the Faculty of Science and Engineering.

Javascript
ReactExpressJsMongoDBRedisKubernetes
Stock Market Simulation
Stock Market Simulation

The project/assignment(s) I designed for the course Advanced Object-Oriented Programming.

Java
JUnitMockitoMavenReactDocker
FLAPS
FLAPS

A final assignment I designed in collaboration with another TA for the course Object-Oriented Programming.

Java
Maven

About me

Me in Iceland :o
Who am I?

I am a computing scientist, book enjoyer, and experienced Google Search user. As far as CS is concerned, my interests lie primarily in the fields of High-Performance Computing, Computer Graphics, and Image Processing. Mainly I work with C++, but I have done projects in numerous languages and with various frameworks. Just like I enjoy a clean and organised house (up to a reasonable limit of course), I also like clean and organised software. As a result, I always try and spend some effort refactoring and cleaning up projects that I actively work on. Clean code bases are way more maintainable, easier to understand and generally a lot more fun to work with.

In my spare time, I really enjoy playing guitar, hiking, 3D rendering, and reading. I (somewhat) recently completed my dream trip to New Zealand; a trip which may been slightly inspired by the Lord of the Rings. Can definitely recommend it, it's an amazingly beautiful country. It goes without saying that I'm also a big fan of modern-day luxuries such as water and sleep.

I have always had a fascination with visual effects and rendering, which started when I first picked up Blender around 10 years ago. Since then, I have been working with Blender and learning quite a few tricks of the trade (although I still have much left to learn). If you are curious, check out my ArtStation below. I periodically try and post some renders there (though I don't have as much time for it these days as I used to).

Cool render