Sujith Katakam

Software Engineer
NC State Alumni | Computer Science


Interested in learning more about me?

Work Experience


Robinhood Markets, Inc

Senior Software Engineer
September, 2020 - Present

Clari

Senior Software Engineer
October, 2016 - September, 2020

MARCNS (startup)

Head of Engineering and Product
Sep, 2013 - May, 2014

Internship Experience


Projects


  • 1. Test Harness to validate Web Services

    Implemented a test harness framework that enables the retrieval of the web service inner methods and allows the scheduling of periodic tests to monitor the health of web services. Logged all the saved schedules and test results to identify critical areas and proactively act before the downtime impact of the web service is felt.

    Technology stack: C#, PL/SQL, SSMS

  • 2. Framework to test performance of SQL Objects

    Developed a tool which can evaluate the performance of SQL objects at both object level and query level. Designed a decent UI and graphical representations to display the statistics, queries, execution plans. Also determined the threshold of an object in multi-threaded programming by virtual load generation.

    Technology stack: C#, ADO.NET, PL/SQL, SSMS

  • 3. Web-based tool for accelerated learning and evaluation

    Designed a website with a sophisticated back-end database which is a point of communication for students and respective professors to carry course related work, post homework, grades and announcements.

    Technology stack: JAVA, MySQL

  • 4. 4 Stage Pipeline, DevOps

    Implemented build pipeline using Jenkins, added Git hook to feature load balancing and distributed requests among all existing servers efficiently. In test pipeline we improved code coverage by identifying which branches are to be covered and generated bug reports. In deployment pipeline, we used Ansible and Vagrant to deploy an application on real remote machines (AWS EC2 instances), performed canary release and monitored the application. In final pipeline, we performed resilience testing using our own versions of Chaos Monkey and Doctor Monkey.

    Technology stack: Nodejs, JavaScript, Vagrant, AWS, Git, Ansible, Jenkins

  • 5. Point of Sales System

    Programmed an interactive system which uses monitor to add or delete purchases, a bar code scanner to detect the product, its quantity, price and benefits, if any and a receipt generator that summarize the purchases.

    Technology stack: JAVA, MySQL, Excel

  • 6. Online Tour Guide

    This project helps the tour planners to ease their work. They can work online and using their own website allow people to check all different packages they provide and also it helps the users to check the tour plan and have a look at all the places they might visit in the tour. It also involves registrations which help them get some possible deals.

    Technology stack: HTML, CSS, JavaScript, jQuery

  • 7. SimpleDB

    Developed a clock replacement policy in buffer management. Reduced time taken to find a buffer for replacement using hash maps. Stabilized the data storage against system crashes and power losses.

    Technology stack: JAVA, MySQL

  • 8. Study of User Migration and analysis of response time on Stack Overflow data set

    Analyzed migration of developers in iOS and Android over the past 6 years based on questions and answers posted on Stack Overflow. Evaluated the effect on response time based on various factors related to tags on the question.

    Technology stack: R, SQL, MS Office

  • 9. Secure Email System

    Implemented a secure email system that can send an encrypted email and decrypt any valid secure email received, using both symmetric-key and public-key cryptography techniques. Used a Network Security concept called Certification Authorities to validate receiver's certificate (while sending email) and sender's certificate (while receiving email) and a local database-utility to track certificates of all users in the system.

    Technology stack: JAVA, Bash

  • 10. Technical Security Review of OpenMRS

    Performed a security review of an open-source, electronic health care system called OpenMRS to identify security flaws in the system. To achieve this, OpenMRS was tested against various vulnerabilities listed in OWASP Top 10 and SANS 25. We also performed a static analysis of source code and threat modeling for certain workflows in OpenMRS. To finish the review, we analyzed usability of OpenMRS against Jakob Nielson’s usability heuristics and documented the steps required to mitigate discovered threats.

    Technology stack: OWASP, SANS, Static Analysis, Threat Modelling

  • 11. Data deduplication across Distributed Storage

    Implemented deduplication for efficient data storage. Used distributed storage to store data between more than one nodes to improve read speeds, upto 4X.

    Technology stack: C

  • 12. Cryptographic analysis and Implementation of Statistical Key Recovery Attack on WEP

    Analyzed various ways possible to crack WEP and implemented a statistical attack (FMS attack) to recover the "key" from a log of WEP packets. Also presented a research paper, which explains different vulnerabilities in WEP protocol and ways to improve the same. However, few of these vulnerabilities were addressed in later standards such as WPA and WPA2.

    Technology stack: Python, Shell scripting

  • 13. Class Portal using Ruby and Ruby on Rails

    Created a Class Portal web application with three tpyes of users namely - Admin, Instructor and Student. Each user has their respective functionalities. Also, chat functionality between Instructors and Students was also implemented. For more details on this app, please checkout Github repo and Heroku app.

    Technology stack: Ruby, Ruby on Rails, Postgres, Heroku

  • 14. Evaluating a IEEE tool

    Worked on evaluating a proprietary Eclipse plugin, called Atlas which helps users to understand code someone else wrote, in a better way. To make it easy for users to use/test this plugin, a compatible virtual machine was created, from scratch. This virtual machine comes will basic setup of plugin and one can directly start using it. Deployment of the virtual machine was automated using Vagrant and Shell scripts. Built a GitHub repository for the tool to provide more details and information on how to use the VM.

    Technology stack: JAVA, Vagrant, Shell scripting, Atlas (Eclipse plugin)

  • 15. Hangman Game

    A generic, interactive Hangman game where a player will be given few chances to guess the word (length of word will be provided) using alphabets from A to Z. A chance is deducted if the player cannot guess any letters in the word. If all their chances are used up before guessing the entire word, they lose, otherwise wins.

    Technology stack: Python

  • 16. Scrabble word Game

    Implemented a basic Scrabble game which involves one player, playing, either against a bot or in practise mode. Player gets scored based on length, difficulty and rareness of word framed using given set of letters. After all letters dealt were finished, player with maximum points wins.

    Technology stack: Python

    Skills


    Programming Languages

    Day-to-day comfort
    Java, C, C++, C#, Python, Shell Scripting, Google Apps Script, REST API, Ruby, Ruby on Rails
    Experience with
    Scala, NodeJS, R

    Frontend Technologies

    Day-to-day comfort
    HTML, CSS, JavaScript, jQuery
    Experience with
    AngularJS

    Databases

    Day-to-day comfort
    Oracle 10g, 11g, MySQL, SQL/PLSQL, MongoDB
    Experience with
    Postgres, Redis

    Operating Systems

    Windows, Ubuntu, Mac OS

    Tools

    Eclipse, Intellij IDEA, PyCharm, RubyMine, WebStorm, SSMS, MS Office, Vagrant, Jenkins, Swagger, Heroku, Slack, Hubot, Jetty Server, Alert Logic, Azure, Nexpose, CloudPassage

    Other Skills

    Version Control (Git), Amazon Web Serivces (AWS), Agile Methodology, Requirement Analysis, Change Management

    Certifications


    Python

    Honor code certificate from MITx for completion of MITx 6.00.1x: Introduction to Computer Science and Programming Using Python

    MongoDB

    M101J: MongoDB for Java Developers course completion certification

    jQuery

    Honor code certificate from Microsoft for completion of DEV208x: Introduction to jQuery