Profile Picture

Hi, I'm

Shavin Anjitha

A Computer Science and Engineering undergraduate mainly focusing on Distributed Systems, Cloud Computing, Computer Security, Networking, Software Architecture and Big Data. One who always questions how things work, why they exist, and how to turn that knowledge into something real. One who doesn't chase the shiny, visible layers—but fascinated by the middle layers, the unseen parts that make everything possible. One who loves building for those who build technology, creating the tools that power innovation. And one who believes that knowledge isn’t meant to be kept but shared, always eager to pass on what is learned.

education-logo

Education

I am currently pursuing a Bachelor of Science in Computer Science and Engineering at the University of Moratuwa. I am expected to graduate in 2026.

University of Moratuwa

Bachelor of Science in Computer Science and Engineering

2022 - 2026

G/Dharmasoka College

Physical Stream - GCE Advanced Level

2007 - 2020

education-logo

Skills

I have a wide range of skills that I have acquired over the years. I am proficient in the following technologies and tools.

file_type_flutter

Blog Articles

blogging-logo
📝
BLOG 26 JAN, 2025

Phi Accrual Failure Detection in Distributed Computing

Failure detection is one of the most fundamental building blocks of distributed computing for ensuring fault tolerance. It mainly helps to efficiently coordinate tasks/jobs between multiple nodes...

Shavin Anjitha

Distributed Computing
Fault Tolerance
Algorithms
📝
BLOG 30 DEC, 2024

HyperLogLog: Precision Estimation for Massive Data Streams

Counting elements has become one of the fundamental processes in many computer systems and infrastructures today. In particular, determining the cardinality, or the number of distinct elements...

Shavin Anjitha

Scalability
Big Data
Algorithms
📝
BLOG 30 SEP, 2024

Scaling with Probabilistic Techniques in System Design: Bloom Filters

Have you ever wondered how large-scale systems like Twitter, Facebook, or Instagram instantly check whether a username...

Shavin Anjitha

Scalability
System Design
Database
📝
BLOG 7 OCT, 2024

Consistent Hashing: Building Blocks for Scalable Distributed Systems

With the ever-increasing demand and popularity of the web, web services, and cloud computing, distributed systems have gained popularity…

Shavin Anjitha

Distributed Systems
Scalability
System Design
📝
BLOG 20 MAY, 2024

Nginx 101: The Architecture That Powers Modern Websites

Web server software is a crucial piece of software in today’s world. From traditional Apache servers to modern, sophisticated ones, a few major web server...

Shavin Anjitha

Web Server
Architecture
Reverse Proxy
📝
BLOG 29 SEP, 2023

Fork Bomb in Linux

Before we delve into what the fork in Linux is, first we have to understand what is a system call in the Linux system. As you already know....

Shavin Anjitha

Linux
OS Security
Attacks

"NPM Developer"

BitMonX Discovery Server BitMonX Discovery Client Library

BitMonX Discovery Server And Client Libraries

BitMonX Discovery Server (BDS) and BitMonX Discovery Client (BDC) are two NPM packages that i developed to faciliate service discovery feature within a microservice architecture in Node environment. BDS is a server that runs on a central server and BDC is a client that runs on each microservice. BDC registers the microservice with the BDS and BDS keeps track of all the microservices. BDS also comes with the following features providing full capabilities for manages microservices.

  • Automatic Service Registration
  • Client Side Service Discovery
  • Server Side Load Balancing
  • API Gateway
  • Rate limitting and throttling
  • Real-time dashboard

Projects

My projects makes use of modern technologies and tools to create beautiful and responsive websites, applications, libraries, and games. Here are a few of my projects. Check out my GitHub for more projects

Web App

Game of Life

This web app is a simulation of Conway's Game of Life. It is a cellular automaton devised by the British mathematician John Horton Conway in 1970. The game is a zero-player game, meaning that its evolution is determined by its initial state, requiring no further input. One interacts with the Game of Life by creating an initial configuration and observing how it evolves. This is a 2D web based implmentation of the the game of life using Javascript and HTML5 Canvas. Game consists of simple game engine built using purely Javascript and HTML5 Canvas for rendering the game.

Web Site

PixelStream

PixelStream is a photo streaming platform for photographers and photo enthusiasts. It allows users to upload, share, and view photos from around the world. The platform provides a simple and intuitive interface for users to interact with the photos and photographers they love. Also, it provides a platform for photographers to showcase their work and connect with other photographers, so they can learn and grow together.

NPM Library

BitMonX Discovery Server & Client Libraries

BitMonX Discovery Server (BDS) is a server designed to facilitate the discovery of services within a network environment, especially in a multi-service (microservice) setup. It works in tandem with the BitMonX Discovery Client (BDC) which is integrated with the services. BDS is a lightweight discovery server built entirely using Node.js. Once the services are initialized with the BDC client, they can register themselves and connect with the BDS discovery server to both announce their presence and locate other services running on the network.

Web Site

MoraUXPlore 2.0 Official WebSite

This is the official website of the MoraUXPlore 2.0 organized by IEEE student branch of University of Moratuwa. The website is built using Node.js for the backend and React.js for the frontend. Also MySql is used for data persistence. The website consists of a landing page and dashboard for the participants to register, view annoucements, ask questions, submit their designs and view the results. The website's backend is hosted on Azure and the frontend is hosted on Netlify.

Web Site

SLIoT 2023 Official WebSite

This is the official website of the SLIoT Challenge 2023 organized by Computer Science & Engineering Department, University of Moratuwa. The website is built using only HTML, CSS and Vanila JavaScript. Also GSAP and lenis libraries used to ptovide smoother use experince and greater animations.

Desktop App

Grapher

This is a standalone desktop applications that allows users to plot graphs of mathematical functions. The application is built using Java and JavaFX. The application provides a simple and intuitive interface for users to input mathematical functions and plot the graphs. The application also provides features such as zooming, panning, and saving the graphs as images. Also the application is capable of calculating derivatives, intergrals, and roots of the functions. This application is basically built for plot explicit single variable functions and parametric functions.

Game

Dam Game

This is a simple 2D desktop based dam game built using Java and JavaFX as the GUI library. The game is a two player game where each player has 12 pieces. The game is played on a 8x8 board. The game is played by moving the pieces diagonally to the empty squares. The game is won by the player who captures all the opponent's pieces or blocks all the opponent's pieces. The game is built using Java and JavaFX for the GUI. The game consists of a simple game engine built using purely Java and JavaFX for rendering the game.

Contact Me

Reach out for a new project or to say hello

Send Me A Message