I am excited to start my first job after school at Quantified, a startup based out of Menlo Park, CA.
I completed my BS in Computer Science at Carnegie Mellon University in December 2014. I have taken Computer Science courses across a wide range of topics such as Distributed Systems, Parallel and Sequential Data Structures, Algorithms, Machine Learning, and Computer Systems. I practiced my skills while in school by being a Teaching assistant for some of these courses.
With a keen interest in Software Engineering, and a basic understanding that industry-standard software engineering can be very different from Programming Assignments in school, I have taken up Summer Internships roles and have participated in programs such as the Facebook Open Academy program, to further my experience and learning.
Software Engineer @ Working on the Infrastructure team to build our Data Platform. From March 2015 to Present (10 months) San Francisco Bay AreaTeaching Assistant @ Teaching Assistant for 15-440 - Distributed Systems for Fall 2014.
The details of the course can be found on http://www.andrew.cmu.edu/course/15-440-f14/
Primary responsibilities included helping students with understanding the concepts taught during lecture through office hours and helping them with the projects during the semester. Grading, both projects and exams, is an important part of the role. From August 2014 to December 2014 (5 months) Software Engineering Intern @ Summer Internship in the Tools team at LinkedIn, Mountain View.
Worked on the Tools team in the Change Request Tracking division. Created a central repository of developer preferences for the various deployable services at likedin. Exposed a REST API endpoint for services to register customizable preference for their depolyables and created a webapp where developers could customize the registered preferences.
- Designed a relational DB schema to deal with storing and retrieving large amounts of data in an efficient way to speed up queries.
- Created a highly adaptive framework to deal with different registered deployables having different layers of preferences.
- Developed full stack. From May 2014 to August 2014 (4 months) San Francisco Bay AreaTeaching Assistant @ TA for 15-122: Principles of Imperative Computation at Carnegie Mellon University (School of Computer Science). Position involves creating assignments, holding weekly office hours, and conducting weekly recitations for a section of ~30 students.
The course teaches imperative programming and methods for ensuring the correctness of programs. Students learn the process and concepts needed to go from high-level descriptions of algorithms to correct imperative implementations, with specific application to basic data structures and algorithms. From January 2014 to May 2014 (5 months) Open Source Developer @ Worked on the Prediction.io project as part of the Facebook Open Academy program.
PredictionIO is an open source machine learning server for software developers to create predictive features, such as personalization, recommendation and content discovery. Because of the nature of this project, there are many instances when background jobs intensively use up the system resources. My project was to extend system monitoring capabilities to the prediction.io architecture.
Prediction.io is composed of 3 main servers. The Admin Server that handles all the different servers, the API server which holds all the Machine Learning APIs and the Scheduler Server which handles scheduling of all Mongo and Hadoop jobs. The Admin Server coordinates the functioning of all scheduler and API servers. My project was a CPU/Ram Usage monitor for the different server nodes.
The Project was divided into 3 different aspects. The StatsMonitor, StatsCollector and the GUI to display the stats. I worked on the StatsMonitor with one more teammate and we created a REST api to obtain stats such as CPU usage, Ram usage and Disk usage. I then created a StatsCollector which would periodically record usage stats into a MongoDB Collection. I also exposed this usage stats through another REST api. This was then used up in a front-end developed by one of my teammates.
The primary language used for this project was Scala. From January 2014 to May 2014 (5 months) Course Assistant @ Course assistant for 15-112 - Fundamentals of Programming and Computer Science.
Starting from first principles, the course covers a large subset of the Python programming language, including its standard libraries and programming paradigms. From August 2013 to December 2013 (5 months) Greater Pittsburgh AreaSoftware Engineering Intern @ Worked in a Scrum based agile software development team. Created backend infrastructure to use access logs to gather real time web analytics which removed need for third party web analytics APIs and made web analytics almost instantaneous, down from ~45 mins. Setup FluentD in all web servers to continuously tail and forward web access logs to a centralized log aggregating server. The log aggregator server ran FluentD plugins that I wrote which parsed these incoming logs and stored relevant web access data.
Created a widget for the retailmenot homepage that display live stats about usage. This widget was presented to the senior executives of the company. From June 2013 to August 2013 (3 months) Austin, Texas AreaResident Assistant @ From August 2012 to May 2013 (10 months)
Bachelor of Science (BS), Computer Science @ Carnegie Mellon University From 2011 to 2015 Don Bosco Park Circus From 1997 to 2011 Vineet Goel is skilled in: Python, Java, C, JavaScript, Software Development, Web Development, Computer Science, Programming, HTML/CSS, Scala, Ruby, Git, REST, jQuery, Matlab