Skip to content
View BrijeshSavjani's full-sized avatar

Block or report BrijeshSavjani

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
BrijeshSavjani/README.md

banner

I am a recent First-Class Computer Science graduate. I love programming of all sorts but particularly low-level systems, full-stack development and ML/Data Science.

πŸ‘¨β€πŸ’» About Me

const Brijesh = { education: 'First-Class BSc Computer Science (Hons) @ Lancaster University', focusAreas: [ 'Application Development', 'Embedded Systems', 'Optimisation', 'Distributed Systems', 'Data Science', ], intrests: [ 'Low-level/Embedded programming', 'AI', 'System Design', 'Statistics', ], hobbies: [ 'Home Network Lab', 'IoT Automations', 'Cricket', 'Badminton' ] }

What I'm currently working on?

πŸ” Keyword Intelligence System

  • A producer-consumer based concurrent keyword finder to help deliver data-driven insights on optimal keyword usage and placement
  • Batch processed multi-language NLP pipeline in spacy
  • Complex vectorised scoring system
  • Tech Stack: Python, Playwright, spaCy, scikit-learn, Pandas & NumPy

πŸ“ Bat Swing Profiler

  • Goal is to profile statistics of bat swings (e.g. acceleration, rotational twist and timing) to help players get more consistent shots with data.
  • Currently prototyping on ping-pong paddles but later planning to scale to cricket bats
  • Using the NRF52 processor and LSM303 Accelerometer module on the MicroBit V2 but implementing custom drivers and Hardware Abstraction Layers to allow for maths and analysis to be hardware agnostic
  • Will log results to computer (using BLE) where it can be graphed and stored for later analysis.
  • Inspiration and maths based off https://doi.org/10.1016/j.proeng.2014.06.106.
  • Tech Stack: C++, MicroBit V2 & LSM303

Favourite things I've worked on:

🏏 Cricket DRS System

  • What it was: A Decision Review System for cricket where I could process caught behind and LBW appeals. LBW appeals were handled with a multi camera input system to track and triangulate the ball in 3D space and then predict its future path,
  • The Tech: Python, OpenCV, NumPy and MatPlotLib
  • Why I loved it: Bridged the gap between my love of programming and cricket. It also challenged me to improve my programming and mathematical/statistical abilities.

πŸ’Ύ FAT16 Filesystrem

  • What it was: A FAT16-based file system from first principles designed for reading, parsing, and navigating raw disk image files. It directly interprets data structures on disk, such as the Boot Sector and BIOS Parameter Block, in order to set up volumes and retrieve file metadata by tracing clusters using the File Allocation Table.
  • The Tech: C
  • Why I loved it: Removing the abstractions of modern operating systems and working directly with raw data was challenging but incredibly rewarding. Navigating boot sectors and manually reassembling file clusters taught me how data persistence really works.

πŸ› οΈ Bare-Metal Embedded C Suite

  • What it was: A series of bare-metal projects on a Nordic NRF52 in which: I manually Implemented Serial Logging (via bit banging),I2C communication (via TWI peripheral) and PWM all from first principles. I also smoothly breathed an RGB LED (using a Taylor series expansion of Sin for the breathing rate and potentiometer to determine colour gradient), developed custom drivers for OLED and LED Matrix Displays. I then used those drivers in conjunction with ISRs and GPIOTE peripheral to continuously plot and scroll smoothed Acceleration and Jerk values from a LSM303 Accelerometer.
  • The Tech: C, MicroBitV2 (Nordic Nrf52) & Cortex Debug
  • Why I loved it: My first exposure to directly interfacing with hardware. Also taught me a lot on how abstractions we often take for granted like I2C and PWM or even maths libraries work and why they're important.

🧬 SDM-Assist

  • What it was: Modernised and translated an aging AS3 codebase into a scalable, modern web application that ran within a cloud hosted JupyterLab environment. Also added new features like primer visualisation with point and click modification as well as workflow improvement features like Undo/Redo and save files.
  • The Tech: JupyterLab, React.js, TypeScript and MaterialUI
  • Why I loved it: First time working with real production code at scale. Learnt a lot about project architecture particularly about the trade offs between extension and standalone development.

πŸ’» Secure Distributed Auction System

  • What it was: Distributed multi-user, client-server auction system with multiple passive replicas synchronised by a custom RAFT-like protocol for fault tolerance. Secured by symmetric and asymmetric RSA encryption to generate custom a custom challenge-response with digital signatures and time-based access tokens.
  • The Tech: Java, Remote Method Invocation, RAFT Consensus & Cryptography
  • Why I loved it: The steep learning curve was a great challenge for me and was something I really enjoyed. This project taught me a lot about designing at scale for faults (both malicious and hardware based) and about putting security first.

Get in touch with me

LinkedIn Β Β Β Β Β Β  Email
Credits:
Thanks to NASA for the image of the Earth

Popular repositories Loading

  1. Digital-Pet Digital-Pet Public

    Digital Pet (Tamagotchi) Coursework for Computer Science

    C# 2 1

  2. Space-Invaders-Game Space-Invaders-Game Public

    A version of Space Invaders made in C#

    C#

  3. BrijeshSavjani BrijeshSavjani Public

  4. Old-CS-coursework Old-CS-coursework Public

    A-level computer science coursework that was made before I had made my Github

    C#

  5. A-star-algorithm A-star-algorithm Public

    An A* Algorithm made in C#

    C#

  6. EncryptionAlgorithms EncryptionAlgorithms Public

    Encryption algorithms built for school coursework. Polynomial Caeser Cipher ( very cool) & Caeser cipher

    Python