
Marcin Bogdanski
Verified Expert in Engineering
Machine Learning Developer
Bristol, United Kingdom
Toptal member since March 28, 2019
Marcin is passionate about artificial intelligence especially about deep learning and related technologies. In 2007, he completed his bachelor's degree in computer science with a focus on AI and then pursued a career in robotics but his first love remained AI. Within the past few years, he's refocused his attention on deep learning projects, drawing upon his more than a decade's worth of hands-on experience in software as a team lead.
Portfolio
Experience
- Python - 12 years
- Machine Learning - 8 years
- Artificial Intelligence (AI) - 8 years
- Deep Learning - 8 years
- Deep Neural Networks (DNNs) - 8 years
- PyTorch - 6 years
- Natural Language Processing (NLP) - 4 years
- Machine Learning Operations (MLOps) - 4 years
Preferred Environment
Visual Studio Code (VS Code), Jupyter Notebook, PyTorch
The most amazing...
...project I've implemented was a vision system which won first prize along with $20,000.
Work Experience
Senior ML Engineer
Consulting Work
- Benchmarked six vision-language models and deployed the best performer to caption 1+ million game screenshots, raising usable caption coverage from around 10% to over 70%.
- Built and validated a PixArt Sigma fine-tuning pipeline with custom dynamic batching by image size for a game-prototyping platform.
- Designed and deployed a multi-camera occupancy counting system for COVID-19 compliance; achieved >90% accuracy processing 50-100 camera feeds in near-real-time across six pilot retail locations.
- Provided NLP solutions to mine and analyze a call center's transcript database.
- Extended AlphaZero to imperfect information games, validated against Facebook OpenGo.
- Built a vision system that won $20,000 1st prize at Melbourne Knowledge Week.
- Designed the NLP algorithm for automated text summarization of financial news articles.
- Created the neural architecture for fault detection on images of wind turbine blades.
- Built an algorithm for time-series analysis and prediction based on home IoT sensors.
- Introduced a vision system for tooling wear assessment for a major aerospace manufacturer.
Technical Director
DroneX, Ltd.
- Developed real-time image segmentation for obstacle avoidance in a prototype ground robot.
- Implemented AI that coordinated 200+ mobile mining robots in simulation (a US customer).
- Led a team of engineers to design and build hardware and software for many drone projects.
- Delivered all projects to full customer satisfaction (with some projects resulting in patents).
Team Leader
Go Science
- Oversaw and managed multiple software and hardware system integrations on an experimental autonomous deep-water vehicle.
- Led a team of engineers in the delivery of multiple successful customer-facing trials.
Co-founder
Giko Games
- Programmed a 3D game engine for Android in Java which was used in two published games.
Software Engineer
Imagination Technologies
- Built parts of the Windows 7 GPU driver in C++ and programmed a full test suite in Python.
Experience
Two-stage Pipeline for Video Game Screenshot Captioning and Generation
I defined a 6-category evaluation rubric (layout, characters, UI elements, camera angle, lighting, and artistic style), manually labeled 50-100 reference images, and benchmarked six vision-language models (Florence-2, LLaVA, MiniCPM, Phi-3-vision, and CogVLM2). I containerized the selected model, integrated it into the existing Docker and RunPod infrastructure, and processed the full dataset on a 4×4090 node. The pipeline was then deployed to production for ongoing ingestion.
For the generation, I built a PixArt Sigma fine-tuning pipeline using HuggingFace Transformers, implementing custom dynamic batching by image size from scratch. I conducted validation with multi-day test runs and handed off for production training.
NLP Data Mining and Analysis of Call Center Transcripts
I curated a training dataset, evaluated multiple model architectures (BERT, encoder–decoder transformers, and others), selected the top-performing approach, and implemented training on an eight-GPU AWS node, running multiple experiments simultaneously. I packaged the trained model in Docker and deployed it to a Nomad cluster for production, processing approximately 5,000–10,000 transcripts per day. Compared with earlier manual methods, the project reduced costs by approximately eighty percent in the first year.
Real-time Retail Occupancy Monitoring System
The main challenge was that there was no API access to camera feeds—only a web interface. I engineered a workaround using Docker containers with virtual framebuffers, capturing frames via the browser's screen grab feature. The pipeline integrated two detection models to handle mixed standard and fisheye cameras.
The system processed 50-100 cameras across six pilot stores with a latency of 2-4 seconds, achieving an accuracy of over 90% against manual ground truth.
TECHNOLOGIES
Python, Docker, OpenCV, AWS, object detection models, and browser automation.
Parking Sign Detection and Recognition
Parking signs in Australia are notoriously complicated. The project was to build a proof-of-concept vision system to detect and recognize signs with a mobile phone and let the user know whether they can park at that location.
TECHNOLOGIES:
The system uses a customized state-of-the-art multi-stage neural network for detection. The main challenge was working with a tiny data set and a large variety of backgrounds, lighting and weather conditions and obstructions. We deployed the system for production on Amazon EC2
This project won first place and a monetary prize of $20,000 at the Melbourne Knowledge Week. I was fully responsible for the AI technology and the demo was delivered by the customer.
Automatic Text Summarization of Financial News Articles
Stock traders need to process a large quantity of complex information in real-time to be able to compete. The project was to analyze input PDFs and present to the user a short 2-3 sentence summary.
TECHNOLOGIES:
During the research phase, we experimented with both extractive and abstractive text summarization, sentiment analysis, and translation techniques to get all the pieces necessary for the final product. Decoding raw PDFs was a significant challenge as well.
Time Series Analysis and Prediction for Housing Occupancy
Smart home and IoT technologies offer huge potential savings in heating, power, air conditioning, and predictive maintenance. Combining sensor data from thousands of properties, we could identify actionable insights for occupants and landlords.
TECHNOLOGIES:
Houses were equipped with a variety of sensors like power, temperature, humidity, and CO2. We used a range of models like ARIMA, Gaussian processes, neural networks to detect latent variables (e.g., occupancy status), predict behavioral patterns (e.g., heating requirements), and risk of issues (e.g., hidden mold).
Automated Wind Turbine Fault Detection
This project is a proof-of-concept neural architecture for automated fault detection on high-resolution images of wind turbine blades. I provided know-how via ongoing consulting as well as developed actual software for data pre-processing and model training and testing. The customer provided images and preliminary labels in a raw format. A large part of the project was to browse, clean, select, and label data provided so it can be feed into the machine learning component.
TECHNOLOGIES:
Due to the unique technical challenges that we encountered, we developed two non-standard components:
1. A completely custom preprocessing pipeline to handle the characteristics of the input data.
2. A far-reaching optimization of a neural network subsystem to allow for fast training time.
Self-driving Software for a Semi-autonomous Unmanned Ground Vehicle
In this project, I worked as the principal software developer responsible for designing and implementing a self-driving module for an unmanned ground vehicle (UGV). The robot needed to navigate with GPS for predetermined routes where an obstacle avoidance module would be responsible for detecting unexpected obstacles like pedestrians, parked vehicles, and similar challenges (the robot would use walking paths).
TECHNOLOGIES:
The primary sensor was a front-facing monocular RGB camera (i.e., a webcam). Images from the camera were processed by two independent neural networks.
1. YOLO for object detection and localization—pedestrians, parked vehicles, and more. The network was trained on both a pre-existing dataset as well as a mix-in of our own training data.
2. SegNet was used for detecting if the ground in front of the vehicle is drivable (e.g., pavement, tarmac). The network was trained on cityscapes with a few added images.
Tool Wear Assessment for a CNC Router
A CNC router is a machine that uses a rotational tool bit (drill) to remove material from a solid block to manufacture a target part. The tool bits wear down and technicians often forget to check and replace them. This system automatically takes a picture of the tool bit before the job has started and feeds it into a convolutional neural network to evaluate the current wear of the tool bit.
TECHNOLOGIES:
Image classification is performed with DenseNet-201 which showed the best performance out of the attempted architectures. CNN was initially trained on ImageNet and then trained further. The classifier was trained on a target dataset with heavy data augmentation and applied regularization. Afterward, the training network was able to detect cracked, chipped, or overheated (changed color) tool bits.
The system is currently operating in a machine shop at an aerospace manufacturing facility.
Interactive Simulation for a Mining Robot Swarm
The purpose of this project was to assess in detail the performance of a swarm of 200+ mining and support robots. The swarm would start in containers, then deploy solar panels, build a surface base, excavate tunnels, process raw materials, and finally wind up in an operation. The complexity of the project was similar to a simple strategy video game.
TECHNOLOGIES:
The simulation is physics-based and built in a Unity3D game engine along with a set of plugins for dynamic volumetric terrain (so that the robots can freely excavate). An individual robot AI manages energy, navigation, task queues, and more. The swarm AI manages task allocation, robot coordination, excavation orders, and similar.
At any point, a user can override the high-level strategy or take over full control over an individual robot.
Education
Bachelor of Engineering in Computer Science
University of Bielsko-Biała - Bielsko-Biała, Poland
Certifications
Natural Language Processing Nanodegree
Udacity
Computer Vision Nanodegree
Udacity
Deep Learning Specialization
Coursera
Deep Learning Nanodegree Foundation
Udacity
Skills
Libraries/APIs
Keras, PyTorch, TensorFlow, OpenCV
Tools
Jupyter
Languages
Python, C, C++, C#, SQL, Java
Platforms
Jupyter Notebook, Visual Studio Code (VS Code), Docker, Amazon Web Services (AWS)
Storage
Data Pipelines, Amazon S3 (AWS S3)
Other
Machine Learning, Deep Learning, Reinforcement Learning, Deep Reinforcement Learning, Artificial Intelligence (AI), Robotics, Software Engineering, Computer Vision, Natural Language Processing (NLP), Neural Networks, Deep Neural Networks (DNNs), Convolutional Neural Networks (CNNs), Generative Pre-trained Transformers (GPT), Data Science, Large Language Models (LLMs), Data Engineering, Image Segmentation, Containerization, Machine Learning Operations (MLOps), Large Language Model Operations (LLMOps), Model Tuning, Evolutionary Algorithms, Neural Machine Translation, Image Generation, Small Language Models (SLMs), Fine-tuning, Machine Translation, Object Detection, Image Classification
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring