Ajith Kumar Natarajan


I am a young professional with about 4 years of industrial experience. The majority of my work has been in the fields of cloud software engineering, distributed systems, software development and computer vision. I have the experience of working in both medium and small-sized environments.

As a self-motivated and team player, I love to engineer innovative products that can improve our day-to-day lives. Being a computer scientist as well as an engineer, I have a good understanding of the fundamentals behind the working of software.

You can find my resume here.


Education

  • University at Buffalo - State University of New York, USA

    Master of Science - Computer Science

    Coursework:
    Distributed Systems, Computational Science, Algorithms, Linear Algebra, Computer Vision and Image Processing, Machine Learning, Information Retrieval, Pattern Recognition, Decision Analysis

  • Madras Institute of Technology (MIT), India & Indian Institute of Technology (IIT), Madras, India

    Bachelor of Engineering - Electronics Engineering

    Selected coursework:
    Data Structures and Algorithms, Object-Oriented Programming, Computing Techniques, Digital Image Processing, Embedded Systems, Microprocessors, Microcontrollers, Integrated Circuits, Digital Logic Theory, Digital Signal Processing, Control Engineering, Process Control, Thermodynamics and Fluid Theory


Work Experience

Cloud Development Engineer

Pegasystems
  • Conceptualized, designed, identified gaps and did key contributions in the release process of Pega Cloud 3.x.
  • Automated the triaging of bugs being created as part of nightly test builds.
  • Implemented end-to-end automation of a complicated build release process.
  • Single-handedly drove an initiative to shut down a mostly stale, yet major cloud account (>$1M/yr) used across org.
  • Automated the cleanup of development artifacts being generated. Saved more than 75 TB of data usage.
  • Resolved 80% of SEV1 incidents that my team was responsible for during 2021-22.
April 2021 - November 2022

Cloud Development Engineer Intern

Pegasystems
  • Developed a Terraform script that provisions the necessary infrastructure to spin up a Kubernetes cluster in the cloud; deploy applications such as Jenkins in the cluster; setup some plugins with required configurations and finally run some proprietary jobs in it. This was facilitated using the Infrastructure-as-Code methodology. (Gitbook)
  • Worked on a POC of different continuous deployment tools for the team to reduce man-hours by 12% and cost by more than 200%.
May 2020 - December 2020

Research Assistant

Supervisor: Prof. Venu Govindaraju (University at Buffalo - State University of New York)
  • Built an AI model to reverse engineer the data used to create scientific plots.
  • The end-to-end pipeline will consist of text detection & recognition; text role classification; plot element classification followed by CSV generation.
August 2019 - December 2020

Software Engineer

Supervisor: Prof. Srinivasa Chakravarthy. V (Indian Institute of Technology, Madras)
  • Led a team of 3 members to build a CNN model with 93% accuracy to recognize a novel finger-spelling system based on Bharati.
  • Developed an OCR engine (accuracy: 97.5%) for a new Bharati font.
  • Built Bharati Handwriting Keyboard, an Android application. This app takes in keystrokes in Bharati script and converts to corresponding output character using SVM classifier. The output is given in the language chosen in the application settings. Link to the app.
  • Built Bharati transliterator Android application. This application transliterates text in Indian scripts to Bharati, to facilitate tourists in India to read texts & signboards in other Indian languages. Link to the app.
  • Developed a mobile board game titled Bharati JumbleTumble along with two of my team members. Link to the app.
  • Was instrumental in signing a project MoU amounting to USD44400 between Bharati script team and Tata Consultancy Services.
  • Re-built bharatiscript.com website from scratch.
  • Some magazines where my work has been covered: Times of India (English), The Hindu (English), Sakshi (Telugu).
August 2018 - July 2019

Software Engineer

Back-end Systems Integration - Conversion of various file formats to Java objects
  • Devised the back-end technique to import files of different types (CSV, TSV, XLS, etc..) and integrate into the current Zoho Tables (product yet-to-be-launched) project using JSON with Java.
  • Received the "Best Intern" award for the year 2017-2018.
December 2017 - July 2018

Research Associate

Supervisor: Prof. Arun K. Tangirala (Indian Institute of Technology, Madras)
  • Worked on image reconstruction using sparse optimization framework with adaptive dictionary learning.
  • Designed a centralized face recognition system using sparse optimization framework based compressive sensing and haar-like classifier.
  • Assisted a PhD student in implementing image reconstruction using adaptive dictionary learning and sparse optimization framework.
May 2017 - March 2018

Research Intern

Developing super-luminescent diode based multi-gas sensing technique in 1.5 μm wavelength region
Supervisor: Prof. Nilesh J. Vasa (Indian Institute of Technology, Madras)
  • Worked on identifying the unknown constituents in a mixture of gas by passing through laser and using MLP to classify the gases present based on the frequency of laser absorbed.
May 2016 - June 2016

Technical skills

Programming languages
  • Java
  • Groovy
  • Python
  • Shell Script
  • Terraform
  • MATLAB
  • C++
  • C
  • R

Web Technologies
  • HTML
  • CSS
  • JavaScript

Tools

Microcontrollers

Operating systems


Academic Projects

  • Replication of Dynamo DB (Using Java, SQL, XML) [Source Code] [Video]
    • Replicated the functionality of Amazon Dynamo DB by designing a persistent key-value storage.
    • Any key-value data inserted will be replicated across multiple databases.
    • It supported edge cases such as inserting, querying and failure of an instance in random sequence.
    • Once the failed node comes up alive it interacts with other nodes and replicated all the key-value pairs.

  • Group Messenger with Ordering Guarantees (Using Java, SQL, XML) [Source Code]
    • Implemented a multicast mechanism to build a group messenger that can send messages to multiple AVDs (Used fixed set of ports & socket).
    • A DB based content provider was used to store the messages.
    • Engineered FIFO and total order guarantees. ISIS based algorithm was used for guaranteeing total order.
    • Handled failure of an app instance in the middle of execution.

  • Chord based Distributed Hash Table (Using Java, SQL, XML) [Source Code]
    • Designed a Distributed Hash Table (DHT) that supported ID space partitioning/re-partitioning.
    • When a data was to be written or fetched a ring-based routing mechanism was followed.
    • The DHT was designed to handle node joins and disjoins in the middle of execution.

  • Complete Information Retrieval system (Using Python, JavaScript, HTML) [Source Code] [Video]
    • Built a complete information retrieval system from scratch and hosted (in AWS).
    • Tweets of several celebraties were scrapped and was used as the input text corpus.
    • LDA model was built to evaluate relevance of search query and return the results.
    • Sentiment analysis of tweets was done using NLP techniques.
    • HTML and JavaScript were used to implement the UI.
    • The UI consisted of various filtering & sorting options. Data clouds were also built to visualize the dataset and search results.

  • Panoramic Image builder (Using Python and OpenCV) [Source Code]
    • Detected the corners of structures in input image using Harris detector.
    • Used SIFT descriptor to extract features of the detected keypoints.
    • Wrote RANSAC algorithm to compute the homographic matrix and stitch the images.

  • Classification system using Neural Networks for Fashion-MNIST dataset (Using Python, Keras and TensorFlow) [Source Code]
    • Built a neural network without using any high-level machine learning libraries.
    • Implemented batch normalization on the network; Studied the effect of hyperparameteres such as learning rate, number of epochs, number of hidden layers, number of nodes in the hidden layers etc.; The network produced an accuracy of 85%.
    • Modeled a CNN using Keras on top of TensorFlow; Implemeted mini-batch gradient descent optimization and dropout regularization; This network gave an accuracy of 92%.
    • Built an Auto-Encoder based K-Means clustering model & Gaussian Mixture Model to cluster the condensed representation of the dataset.

  • Image Segmentation using K-Means Clustering (Using Python and OpenCV) [Source Code]
    • Designed a program that outputs the best clustering result for a given 'K' value.
    • Clustering was done only based on Euclidean distance of pixel values.

  • Grid Navigation using Reinforcement Learning (Using Pythonand OpenAI Gym) [Source Code]
    • Built a reinforcement learning agent that navigates a 4x4 grid-world environment.
    • Q-Learning was implemented for the agent to learn the optimal policy.

  • Tuning of Information Retrieval model (Using Python) [Source Code]
    • Implemented probabilistic models of IR (BM25, Divergence from Randomness and Language model) in Solr.
    • Tuned the model performance by using techniques such as query boosting and tweaking model parameters.
    • Evaluated the performance of the models using trec_eval software.

  • Simple Boolean model Information Retrieval system (Using Python) [Source Code]
    • Built a command-line based information retrieval system that supports Boolean queries.
    • Designed the system to build an inverted index by doing basic preprocessing on the input text corpus.
    • Implemented Document-at-a-time retrieval method to generate the output to input queries.
    • TF-IDF statistic was used to rank the resulting documents.

  • Design and development of hardware and software (PC and Android application) of a Modern Smart Vehicle (Human-Machine interface) (Using NI LabVIEW, Android Studio, Python, Java and Raspberry Pi) [Source Code]
    • Developed a PC & mobile application and interfaced it with a prototype of an electronic car to control the vehicle remotely and also to monitor certain real-time information from sensors such as camera feed, speed and battery power remaining.

  • Road Safety Enhancement System for Automobiles by studying EEG waves (Funded by the Centre For Technology Development and Transfer, Anna University) (Using Python, Java, Android Studio and Raspberry Pi)
    • Constructed a neural network with an accuracy of 76% that inputs Electroencephalography (EEG) waves of the driver from NeuroSky mindwave headset to regress the sleepiness of the driver.
    • Fused the output from the neural network with the percentage of closure (PERCLOS) of eyes measured through a camera mounted on the dashboard to determine the state of the driver.
    • If the driver is found to be sleepy he/she would be alerted and guided to the nearest restaurant.

  • Prognosis of Breast Cancer and Diagnosis of Tumour Malignancy through Multiple Machine Learning Data Mining (MLDM) Techniques (Practicum requirement) (Using MATLAB)
    • Implemented Naïve Bayes (91% accuracy) and Decision tree (89% accuracy) classifiers to segregate the breast cancer dataset collected from Hindu mission hospital, Chennai, India into malignant and benign.

  • Mini-projects like pre-skid alerter (Using 3-axis accelerometer module & ATmega2560); Heart Rate Computation from ECG signal analysis (Using MATLAB); Autonomous Trolley Billing system (Using ATmega328P) and multiple other minor projects.

Hackathons

  • Pega Hackathon
    • Created a cronjob that will keep looking at different cloud provider accounts for resource usage.
    • When the job detects that the quota threshold is about to be reached, a bot posts the alert in the internal team communication channel.
    • A quota increase request can be submitted at the click of a button directly from the bot's message.
  • KinShield (Using Python, Java, JavaScript, HTML, CSS, Firebase, GCP, Android) [Source Code]
    • Built a Covid recovery portal (Web and Android) to facilitate kids and old adults. The application tracks the hygiene practices of kids.
    • In cases of adults, the application can be used to get notified when there is a vaccine appointment available at one of the nearby pharmacies if they meet the state criteria.
  • Home management (Using Python, JavaScript, HTML, CSS) [Source Code]
    • Built an IoT system with sensors monitoring the availability of household products.
    • When the supply ran low, the item was added to the shopping cart of the user. This was facilitated using Wegmans' API.
    • The website consisted of statistical visualization of the weekly and monthly purchases.

Certifications & Training


Awards


Activities and Societies