B.

Brijesh Savjani

A software engineer with broad foundations across full-stack development, distributed systems, computer vision, low-level/embedded programming, data, network programming and quantitative risk modelling.

About me

About Me Image

I'm a recent First-Class Computer Science graduate (with a minor in mathematics) who works across software engineering, quantitative modelling, systems programming, networking, data-heavy tooling and embedded development. My projects range from modern React web app development to embedded firmware. I'm most effective on technically demanding work where architecture, algorithms and implementation quality all matter.

Outside of programming, I like watching cricket, playing badminton, reading, cooking, baking and tinkering with my home network and IoT automations. I also enjoy brewing and experimenting with coffee.

My Skills

TypeScript React Python C/C++ Java Data & ML Distributed Systems Embedded Systems Agile CI/CD R MATLAB

projects

projects

projects

projects

projects

projects

projects

projects

projects

projects

SDM-Assist

Software Engineering Web

Translated a tool widely used by molecular biologists (SDM-Assist) from an ageing AS3 codebase into a modern, scalable web app (React, TypeScript and Redux based). Designed with a bespoke architecture which allowed my project to run as a Jupyter-lab extension.

React TypeScript JupyterLab HTML/JS/CSS Agile Bioinformatics

Keyword Intelligence Tool

Data Software Engineering Systems & Low-Level

Highly concurrent, scalable keyword intelligence tool with a vectorised multi-lingual NLP pipeline to provide high-quality data-driven insights over multiple international marketplaces.

Statistics Python Pandas NumPy Playwright Web Scraping Concurrency scikit-learn

Secure Distributed Auction System

Systems & Low-Level Networking & Security

A multi-user fault-tolerant auction system with passive replicas synchronised using a RAFT-like consensus algorithm. Secured with encryption, a custom challenge-response framework and time-limited access tokens.

Cryptography Java Distributed Systems RAFT Passive Replication

nRF52 Bare Metal Suite

Embedded

A series of tools for the nRF52 microcontroller in C using bare-metal programming. Including bit-banged serial, bare metal driver/firmware development for an OLED display and a custom I2C implementation. Also used on-device peripherals such as Timers, I2C, TWI, PWM, GPIOTE/Interrupts and external components such as OLED displays, RGB lights and an LSM303 Accelerometer (on devboard).

C Microcontrollers Bare-Metal I2C Firmware/Driver Development Interrupts

Alcohol & Prescription Trends Statistical Study

Analytics & Quantitative Risk

Processed real-world datasets for cleaning before visualising and statistically testing assumptions using Hypothesis Testing. I presented my results to a panel of peers.

Statistics R

Autonomous Pathfinding Engine

ML & AI

A pathfinding system designed using a Genetic Algorithm which I developed from first principles in MATLAB. Featured modular implementations of multiple selection and crossover methods. Used adaptive mutation rates and immigration strategies to ensure a near-optimal but fast result.

MATLAB Genetic Algorithms

Decision Review System for Cricket

ML & AI Software Engineering

A multi-input DRS system to track balls in 3D space, predict their future path and plot outcomes in 3D. Used a Kalman Filter (built from first principles in NumPy), Nearest Neighbour Data Association and various statistical methods to effectively track the ball to within ±3.5cm (half of a ball's width).

Computer Vision OpenCV Python Matplotlib NumPy scipy Statistics

Quantitative Cyber-Risk Modelling & Control Deployment Optimisation

Analytics & Quantitative Risk Networking & Security

Developed comprehensive quantitative risk models for network security using Monte Carlo simulations and stochastic probability distributions. Then used Bayesian inference and linear programming to assess the effectiveness of security controls and optimise their deployment according to finite constraints.

Statistics Python Linear Programming Risk Analysis SciPy

FAT Filesystem Reader

Systems & Low-Level

A robust, clean-slate FAT16 filesystem reader in C, engineered to read and parse raw disk images directly. The program can interpret on-disk data structures (including the Boot Sector and BIOS Parameter Block (BPB) for volume configuration), load and follow cluster chains via the File Allocation Table (FAT) and parse the directory structure to extract file metadata and content.

C Linux

Football Analytics Engine

Data

Designed a pipeline to ingest raw data on football teams, players and managers in order to load them into a 3NF/BCNF database I had designed.

SQL Java Databases MySQL JDBC

Web-based Home Library System

Web Data

A full-stack web-based home library management system which used PHP, MySQL and phpMyAdmin to store, verify and validate information on books in a user's home library. Featured a responsive, web-based, user-friendly GUI developed in HTML, JavaScript and CSS.

SQL HTML/JS/CSS PHP Databases

Image Processing & Feature Detection Toolkit

ML & AI

Developed a suite of pre-processing & feature extraction/detection tools including: piece-wise linear transforms, histogram specification and image sharpening alongside a Harris Corner Detector and Histogram of Oriented Gradients. All were developed in MATLAB from first principles with a particular focus on efficiency and computation time which led to me leveraging a lot of vectorised matrix operations.

Computer Vision MATLAB

Java Presentation Software

Software Engineering

A PowerPoint-like desktop presentation manager specifically designed for Computer Science teachers with drag-and-drop components (including syntax-highlighted code boxes, rich text boxes, images, shapes and more). Built in Java Swing as part of a 5-person Agile team with bi-weekly standups, feature-branching and merge-based collaboration workflows.

Java Agile Swing

MIPS ISA Emulator & Assembler

Systems & Low-Level

A functional MIPS emulator programmed in C using a provided framework. Broke down MIPS instructions into opcodes and operands in order to perform the relevant operations. Project supported a subset of the instruction set (including both I-type and R-type instructions). Simulated the Fetch-Decode-Execute cycle of a CPU using a virtual memory register system.

C MIPS Assembly

Music Writer/Player in MIPS Assembly

Systems & Low-Level

An interactive music writer/player built in MIPS assembly that takes in user input, renders graphics (using bitmap memory mapping) and plays notes (using syscalls)

MIPS Assembly

Network Configuration and Testing

Networking & Security

Designed, simulated and debugged virtualised network environments. Configured OSPF area segmentation, RIP redistribution and custom IPv4/IPv6 dual-stack addressing.

IMUNES Network Topologies Network Virtualisation

Python Network Toolkit

Networking & Security

Created UDP & ICMP implementations of Ping and Traceroute using raw socket programming. Also, developed a HTTP Proxy & Web Server with persistent caching for faster content delivery.

Python Network Programming Linux Caching

Portfolio Website

Web

A fast, responsive personal portfolio built with Astro and Tailwind CSS to showcase my projects and house information about me.

Astro TypeScript HTML/JS/CSS Tailwind CSS Frontend CI/CD

Recursive Descent Syntax Recogniser

Systems & Low-Level

A recursive descent syntax analyser based on a provided context-free grammar which could validate source code, identify syntactically correct programs and generate detailed error messages for invalid programs. My analyser could handle complex structures like nested loops, conditional statements and procedure calls.

Java

Usability Study of Web Platforms

Web Data

An empirical usability study to evaluate system UX using HCI principles. Developed interactive test environments to collect quantitative user data and system usability scores

HTML/JS/CSS Usability Testing Frontend

Get in Touch

Want to chat? I'm always happy to hear from people wether it's about roles, projects, ideas or something else entirely!

Or shoot me a message below: