The Timeline

2024

2023
2023

2022
2022

2021
2021

2020
2020

2019
2019

2018
Now
...
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
Sep
Aug
Jul
Jun
May
Apr
Mar
Feb
Jan
Dec
Nov
Oct
Projects
Education
Jobs
Warsaw University of Technology logo

Warsaw University of Technology

Faculty of Electronics and Information Technology

BSc in Computer Science

10/18 - 07/22

Battleships

Advanced text-based battleships game with computer opponent and multiplayer support.

C badgeNcurses badge

Hash table implementation

Simple hash table implementation in C++.

C++ badge

Library management system

Simple library management system simulation.

C++ badge

Sports club management system

Sports club management system with boost testing module.

C++ badge

Minix kernel system calls

Kernel compilation and system call implementation in Minix system.

C badgeMinix badge

Minix process rescheduling

Implementation of process rescheduling in Minix operating system.

C badgeMinix badge

Linux process synchronization using semaphores

Implementation of process synchronization using semaphores in Linux.

C badgeLinux badge

Linux process synchronization using monitors

Implementation of process synchronization using monitors in Linux.

C++ badgeLinux badge

Minix memory management algorithms

First fit and worst fit memory management algorithms implementation in Minix operating system.

C badgeMinix badge

Linux virtual file system

Implementation of a virtual file system in Linux.

C badgeLinux badge
Universitat de Málaga logo

Universitat de Málaga

Escuela Técnica Superior de Ingeniería Informática

ERASMUS+ program during BSc

02/20 - 07/20

  • Average grade: 8.66/10.00.

Robocode Genetic Algorithm

Optimization of performance of a robot using JGAP library in Robocode environment.

Java badgeRobocode badgeJGAP badge

Robocode Neural Network

Neural network implementation that approximates length of the battle in Robocode environment using Encog library.

Java badgeRobocode badgeEncog badge
Robocode A* Pathfinder screenshot

Robocode A* Pathfinder

Implementation of A* path search algorithm in Robocode environment.

Java badgeRobocode badge
OpenGL 3D harvester model screenshot

OpenGL 3D Harvester Model

3D model of a drivable harvester with functional camera and headlight system.

C badgeC++ badgeOpenGL badge
Image of the generated maze and the path found by the algorithm

Maze generator and solver

Comparison of BFS, DFS and IDFS search algorithms efficiency in randomly generated maze.

Python badge

Hash table computational complexity analysis

In depth analysis of computational complexity of hashing table element insertion, serach and removal.

Python badgeMatplotlib badge
Application screenshot

Meteorological data gathering simulation

Simulation of real-time system gathering temperatures from geo-distributed meteorological stations.

C++ badgeAllegro badge

Recommendation System

Evaluation and comparison of 3 different recommendations models for web shopping service simulation.

Python badgepandas badgeNumPy badgescikit-learn badgeSciPy badgeFlask badge

ID3 tree classifier implementation

Classification of mushrooms using decision tree in ID3 implementation with entropy and information gain.

Python badgepandas badgeNumPy badge
Screenshot of the animation code and its result in the browser

Animation Interpreter

Interpreter for a custom animation language.

JavaScript badgeHTML badgeCSS badge

RESTful notes

Simple RESTful web service for managing notes.

JavaScript badgeEJS badgeCSS badgeNode.js badgeExpress badgeMongoDB badge
PolSource logo

PolSource

Intern Full-Stack Developer

04/21 - 06/21

  • Was learning Salesforce ecosystem through Trailhead.
Visualization of the results of the Connect Dots algorithm

Connect Dots

Algorithm predicting the location of the optimum of a function based on the gradual rejection of subsequent central points of a set of points sampling a given space.

Python badgeSciPy badgeMatplotlib badgepandas badgeNumPy badgescikit-learn badge
SoftwarePlant logo

SoftwarePlant

Intern Front-End Developer

07/21 - 10/21

  • Was responsible for enabling typescript strict mode in a significant part of a large Angular application.
Screenshot of the game board in the Card Game application

Card Game

Full-stack card game application with real-time multiplayer functionality and user authentication.

Angular badgeTypeScript badgeRxJS badgePhaser badgeWebSockets badgeNode.js badgeExpress badgeMongoDB badgeJWT badgeSass badge
Appfire logo

Appfire (BigPicture)

Front-End Developer

10/21 - 12/22

  • Developed and refactored key Angular components for an enterprise-class application, enhancing functionality and performance.
  • Created, maintained, and refactored multiple Cypress E2E tests, leading to significant improvements in application stability and CI/CD processes.
  • Contributed to the development of a unified big volume data-management infrastructure, optimizing data handling across the entire application.
  • Collaborated in a team of three during a one-week internal hackathon to develop a library for drawing links between draggable HTML DOM elements, significantly boosting app performance compared to the previous third-party library.
QRnamic screenshot

QRnamic

Static and dynamic QR code generator with a user-friendly interface.

React badgeTypeScript badgeFirestore badgeEmotion badgeMUI badge
Warsaw University of Technology logo

Warsaw University of Technology

Faculty of Electronics and Information Technology

MSc in Computer Science

10/22 - 06/24

Burrows-Wheeler transform visualization website screenshot

Burrows-Wheeler transform

Web app visualizing encoding and decoding steps in Burrows-Wheeler transform.

React badgeTypeScript badgeEmotion badgeMUI badge

Game of War

Comprehensive system aimed at facilitating the testing of diverse strategies in the card Game of War.

Python badge
dEclat and Eclat results visualization screenshot

Eclat & dEclat

Implements dECLAT and ECLAT algorithms to discover frequent itemsets from social media posts. Includes data retrieval, preprocessing, algorithmic implementation, and result visualization.

Python badgeJupyter badgeReact badgeTypeScript badgeD3.js badgeAG Grid badgeMUI badgeEmotion badge
Universitat Politècnica de València logo

Universitat Politècnica de València

Escuela Técnica Superior de Ingeniería Informática

ERASMUS+ program during MSc

02/23 - 02/24

  • Average grade: 9.46/10.00.

Hurtful Humor Detector

Multiple machine learning models for detecting hurtful humor in text.

Python badgeJupyter badgeNLTK badgePyTorch badgescikit-learn badgeMatplotlib badgepandas badgeNumPy badge
Part of one of the network visualizations created in the project

Reddit Bipartite Network Analysis

A thorough and detailed examination of a Reddit bipartite network, encompassing extensive data collection, cleaning processes, comprehensive network metrics, and visualizations.

Python badgeJupyter badgeNetworkX badgepandas badgeMatplotlib badgeSeaborn badgePRAW badgeGephi badgeCytoscape badge
FreeBici screenshot

FreeBici

Web app designed to enhance Valenbisi (Valencia city bikes) experience. It allows for the real-time visualization of the occupancy of the bike stations, historical data analysis, and the planning of the bike routes to get around the city for cheapest.

React badgeTypeScript badgeOpenStreetMap badgeLeaflet badgeNx badgeEmotion badgeMUI badgePython badge
StateViz screenshot

StateViz

Universal Chrome extension for analyzing web apps, with real-time state inspection, structure visualization, and DOM highlighting.

React badgeSvelte badgeTypeScript badgeTailwind CSS badgeVite badgeVitest badgeChrome Extensions badge
Quote Shake logo

Quote Shake

Simple mobile app for fetching and saving quotes. Allows for the random quote generation, saving quotes to the favorites list, and reading more about the author.

React Native badgeTypeScript badgeExpo badge

vite-plugin-inline-imports

Vite plugin forcing inline imports for specified modules. Developed with Chrome Extensions in mind, where the content script cannot import external files.

TypeScript badgeVite badgeVitest badge
GeoTec Energy logo

GeoTec Energy Sp. z o. o.

Web Developer and IT Administrator

12/23 - 05/24

10/24 - 11/24

  • Designed, developed and maintained the company’s website ensuring a seamless user experience and optimal performance.
  • Managed the company’s domain and hosting services.
  • Set up and managed Microsoft 365 Business accounts for the company.
  • Developed internal tools to enhance operational efficiency.
GeoTec Energy home page screenshot

Web page for GeoTec Energy

Static, internationalized website for a geothermal energy solutions company, featuring company information, services, contact details, and a blog generated from markdown files for easy content management and updates.

Astro badgeTypeScript badgeTailwind CSS badgeMarkdown badge
Cardiac Electrophysiology screenshot

Cardiac Electrophysiology

Cardiac recordings plotting and analysis tool for electrophysiology research. Allows for the interactive 3D heart geometry visualization, probe recordings plotting, and calculation and plotting of omnipolar signals.

Python badgeDash badgePlotly badgepandas badgeNumPy badge
Command Center screenshot

Command Center

Python console application I created for my dad, who bravely switched from Windows to Linux but is still deathly afraid of the terminal.

Python badge
Recursive screenshot of the portfolio website

Portfolio (this website)

Personal website and portfolio. You're looking at it right now!

Astro badgeSvelte badgeTypeScript badgeTailwind CSS badgeshadcn badgeMarkdown badgeMDX badge
Screenshot of the General Intelligence Assessment website test selection screen

General Intelligence Assessment

Simple Thomas GIA test practice application. Includes reasoning, perceptual speed, numbers speed and accuracy, words meaning and spatial visualization tests.

Astro badgeReact badgeTypeScript badgeTailwind CSS badgeshadcn badge
Screenshot of the General Intelligence Assessment website test selection screen

Periodic Table

Angular app for exploring and managing periodic table elements with filtering, editable data, and local persistence using IndexedDB. Made as a recruitment task.

Angular badgeTypeScript badgeRxJS badgeAngular Material badgeTailwind CSS badgeIndexedDB badge

???

Coming (hopefully) soon...

React badgeTypeScript badgeNode.js badgetRPC badgeTanStack Query badgeDrizzle badgePostgreSQL badgeTailwind CSS badgeshadcn badgeZod badge
Svevn logo

Svevn

Software Engineer

11/24 - Now

  • Just started here, will update as time goes on :)