Senior Software Engineer at Facebook in NYC
Former Senior Software Engineer at Bloomberg L.P.
Former Software Development Engineer Intern at Amazon
Triple Major
Bachelors of Science in E.C.E. (Focus in Computer Engineering)
Bachelors of Science in Computer Science
Bachelors of Science in Mathematics
Rutgers University-New Brunswick; May 2017; New Brunswick, NJ
Java, Kotlin, C, C++, Python, Assembly (MIPS & x86), SQL, Javascript (Ajax, JQuery, Jasmine), SystemVerilog, CUDA (PTX ISA), MATLAB, XML, JSON, Scheme, Bash, HTML, CSS, Ruby on Rails, Datalog
Android, Unity, Firebase, UNIX (VIM), Git, Mercurial, TitanDB, DynamoDB, S3, PostgreSQL, Comdb2, QtSpim, ModelSim, Spim-Cache, Maple
Raspberry Pi 2, Filter Design, Digital System Design, Digital Logic Design, Circuit Design, Transistors (MOSFET & BJT), [Zener, Shottky] Diodes, Oscilloscope, Function Generator
OrCAD, PSPICE, Quartus, Rhinoceros, Google SketchUp, AutoCAD, Blender
Cryptography, Linear Algebra, Linear Programming/Optimization, Quantum Mechanics, Number Theory, Calculus 1-5, Relational Algebra, Fourier Transforms & Series (Continuous & Discrete time), Laplace Transform, Z Transform, Real Analysis
French and English
Bloomberg L.P. - New York, NY - June, 2017 to April, 2021
Data License Reference Data: Owns enterprise level products so that technical clients can access financial information programmatically as opposed to manually querying data through the Bloomberg Terminal.
Lead, designed, and implemented third-party alternative dataset generation workflows (Health Care, Energy, Filing Insights, etc) using Celery, RabbitMQ and Kafka. See article written on this project
Lead, designed, and implemented fundamentals finance dataset generation workflows (Revenue, Assets, Profitability, etc) using Celery, RabbitMQ, Kafka, Hbase, Pheonix, and Spark. Optimized CPU usage by 20x and run-time by 100x for filtering billions of datapoints per day. Scaled run-time performance of generating 500 datasets from 8 days to 2 hours.
Lead, designed, and implemented the revamping of a billion dollar product to use more modern technologies such as Celery, RabbitMQ, Parquet, Hbase, Pheonix and Spark. Improved performance
Lead and implemented migration of high-value legacy C++ tasks from AIX & Solaris to linux. This lowered machine costs & leveraged newer microservice infrastructures.
Assume multiple leadership roles such as Post-Mordem Triage, Scrum Master, Multiple Project Leads and Mentorships.
Implement & maintain python workflows to access different categories of data such as Corporate Actions and Historical Data using Celery & RabbitMQ.
Maintain and extend C++/C/Fortran products which generate billions in revenue per year.
Amazon - Seattle, WA - June, 2016 to August, 2016
Amazon Fulfillment Technologies (AFT): Owns all of the software and infrastructure which powers Amazon's world-class fulfillment engine.
Integrated Query Path Filtering into the main APIs to give clients additional context on the path’s behavior.
Integrated Query Path Validation into the main APIs through machine learning using a Finite State Machine.
Wrote a script to automate validation on large chunks of the graph when there is low volume on ING’s APIs.
Used Titan Graph Database as well as Amazon’s Dynamo and S3 databases.
Worked in Java and XML
Seniorlink - Vayu Technology - Springfield Township, NJ - May, 2015 to Present
Worked on an Android application to provide a virtual care room for caregivers and patients to interact with doctors and specialists, record medical history, and much more. Uses REST API, Encryption, and JSON parsing. Written in Java and XML.
Created a web page to save video, audio, and photos from the device's camera and microphone. Works for both mobile (Android, iOS) and desktops. Uses the Mobile Camera API and the Navigator.getUserMedia API. Written in HTML, CSS, Javascript, and optional PHP to store it to a server.
Created an Administrative Interface that enables easy system level configurations. Displays tables from Seniorlink's database such as Electronic Medical Records, Care Plans and SMS. Lets the administrator modify database attributes easily. Written in Ruby on Rails using Active Admin.
Started the development of Javascript Unit Testing using Jasmine. Wrote over 500 tests and continuing to expand it. Written in Javascript(JQuery and Ajax) using Jasmine.
Worked in Java, XML, HTML, CSS, Javascript(JQuery, Ajax, and Jasmine), Ruby on Rails, SQL.
Rutgers Library Annex - Piscataway, NJ - September, 2013 to May, 2014
Working at the Library Annex in Rutgers University-New Brunswick.
Dealt with shipping, maintaining, imaging and wiping computer for the university libraries.
Maintained inventory and made Ethernet cords for the university libraries.
Want to see more?
Android Application with 6,500+ Installations.
An Android Application for a card game called Munchkin that keeps track of info during the game, helping the game become more time efficient and convenient.
Coded in Android Studio using Java and XML.
Team of 2
Summer 2014
Android Wear Application with 300+ Installations.
CleverObjects lets you control your Smart Things switches and locks using voice command or buttons on your android wear watch.
Coded in Android Studio using Java and XML.
Team of 2
Summer 2014
Google Chrome Extension with 4000+ Weekly Users.
Placed in top 5 projects and won category for Best Rutgers Hack at HackRU Spring 2015.
This extension interacts with the WebReg site, the Schedule of Classes site, and the Course Schedule Planner site. It places an instructors average RateMyProfessor score directly next to their name, and displays their score breakdown when the user hovers their mouse over the average score. This allows students to easily gain feedback on their professors, quickly.
Now uses our own API and Database written in Ruby (Sinatra) to collect score ratings.
New Features: Rate a professor right next to where their score is displayed.
Coded using JavaScript (Ajax, JQuery), Ruby (Sinatra), HTML and CSS
Team of 3
Spring 2015
This project was featured on the front-page of the Rutgers University Official Newspaper
Android Application
An addition to the Five Point Oh Chrome Extension.
Search for professors and rate them.
Now uses our own API and Database written in Ruby (Sinatra) to collect score ratings.
Coded using Java, XML, and Ruby (Sinatra)
Spring 2016
Website Application and Android Application
HackRU Spring 2016 Project
Login through Spotify authentication, add a list of other Spotify users, select a mood, and Djdj will use it's algorithm in addition to the Spotify and Last.FM APIs to generate a Spotify playlist that will be most accurately liked by all users.
Uses our own database written in Ruby (Sinatra) to store playlist information for cross-user login.
Useful for parties and group hangouts!
Coded using Ruby (Sinatra), JavaScript, HTML, and CSS
Spring 2016
Android Application
STILL A WORK IN PROGRESS.
Uses Google's Firebase Real-Time Database and Authentication as well as multi-threading.
Collaborative online incremental clicker game.
Create your own company, play with your friends online, click to earn currency, hire employees to earn currency over time, use abilities, customize your company’s traits, and much more!
Coded using Java, XML.
Summer 2016
Android Application
An automatic real-time survey that can be initiated by a member of a group to check if a group is ready.
Uses Google's Firebase Real-Time Database and Authentication as well as Google Cloud Messaging.
Built a Node.js server to handle push notifications to notify users that a ready check has been initiated.
Coded using Java, XML.
Fall 2016
Portfolio website for a designer using an HTML5 UP Template.
Displays the designer's projects.
Coded using HTML5 and CSS3.
Fall 2015
Software Methodology Project
2-player chess using inheritance and serializability in Android Studio.
Move pieces using click-to-move or drag-and-drop.
Includes all legitimate moves for all pieces including Castling, Enpassant, and Promotion.
Identification of check, checkmate, illegal moves, resign, draw, and stalemate.
Can record chess matches and let's the user playback previous games to analyse them.
Coded using Java and XML
Spring 2016
Operating Systems Project
Implemented Multi-threading using Priority Scheduling and Priority Donation. Removed busy waiting in the timer sleep function.
Implemented User Programs using Process Termination, Argument Passing, System Calls, and Denying Writes to Executables.
Implemented the File System including mountables (USB, SD Card, etc).
Coded using C.
Spring 2016
Principles to Information and Data Management Project
Auction Site similar to Ebay but more precise.
Sells different smart phones: iOS, Android, Windows, Amazon Fire.
User login and user creation included.
End-Users - Create and search auctions. Bid on auctions.
Automatic bidding functionality.
Customer Representatives - An administrator that manages auctions and tickets.
Administrative Staff - Creates administrators and generates summary sales reports.
Coded using SQL, JavaScript, Java Service Pages, HTML, and CSS.
Spring 2016
Principles of Programming Languages Project
Created LL1 compiler to convert tinyL to ILOC assembly code.
Created an optimizer to optimize ILOC assembly code.
Coded using C.
Fall 2015
Principles of Programming Languages Project
Implemented infrastructure that allows the user to create and experiment with different spell checkers that are based on hash functions.
Functional Programming.
Coded using Scheme.
Fall 2015
Principles of Programming Languages Project
Using OpenMP, parallelize a spell checker in C.
Parallel Programming.
Coded using OpenMP.
Fall 2015
Software Methodology Project
Text-based 2-player chess using inheritance, interfaces, and lambda in Eclipse.
All legitimate basic moves for all pieces including Castling, Enpassant, and Promotion.
Identification of check, checkmate, illegal moves, resign, draw, and stalemate.
Includes Javadoc.
Coded using Java.
Spring 2016
Software Methodology Project
GUI in Eclipse.
Create, Delete, Rename, Open, and Search through Albums.
User login (including Administrative Accounts).
Premeditation using UML diagrams.
Includes Javadoc.
Coded using JavaFX.
Spring 2016
Software Methodology Project
GUI in Eclipse.
Add, delete, and edit songs.
Songs are saved to a text file for future use.
Includes Javadoc.
Coded using JavaFX.
Spring 2016
Computer Architecture Project
Read from two text files and simulate a combinational circuit using a tree-like data structure.
One text file is the input, the other is the schematics for the combinational circuit.
Coded using C.
Spring 2015
Computer Architecture Project
Read millions of lines from a text file and insert into a hash table of size 1000 with Linked Lists to prevent collisions.
Elegantly only roughly 50 lines if comments are taken out. No memory leaks.
Coded using C.
Spring 2015
Tic Tac Toe program using Java Swing GUI in Eclipse.
Spring 2012
Intern Project for Maxeta Technologies.
Features: Standard and Military time, incrementing and decrementing.
Coded in Eclipse using Java.
Spring 2015
Blackjack program using Object-Oriented Programming.
Features: Hit, Stand, Split, Double down, Surrender, Scrolling text.
Coded in Eclipse using Java.
Spring 2013