Agos (Spring 2019) |
is an operating system kernel written in Rust. This was a semester long academic project completed under the supervision of Amit Levy. The goal was to understand the costs and benefits of writing an OS kernel in a safe higher level language like Rust and the extent to which it would help minimize the trusted code base.
Poster. Presentation. Stack: Rust, x86_64, C, Assembly |
Timescale (contrib.) (Summer 2018 and a.y. 2018-2019) |
As an intern and then as a part time software engineer I worked on a number of projects at Timescale.
As an intern I found and fixed several critical bugs that crushed the database. I also worked on a feature letting clients see list of chunks comprising a timeseries table. I was involved in all stages of the feature development starting from researching other database, approaches, API design to proposing several different approaches and concluding with this implementation (show_chunks implementation). Stack: C, PL/pgSQL, SQL List of my contributions. |
PrincetoNN (HackPrinceton S2017) |
is an Alexa skill-application that enables voice access to a number of online Princeton undergraduate community websites such as Piazza, Tigerbook (college facebook), classes/club events, etc.
Source. |
Maze (March 2018) |
is a maze generator and editor built with Processing. It has been used to create world layouts for Princeton University Robotics competition
.
Stack: Processing, Java Source. |
Teaching @ TumoLabs (Jul 2017,August 2018) |
Over the summers of 2017, 2018 I planned and led 10-day workshops at TUMO Centers in Armenia.
In one of them I taught the mathematics behind neural networks and the inner workings of decision trees as a continuation of a sequence of 2 previous courses taught by other instructors. As a capstone project the participants submitted their neural network digit recognizers to Kaggle MNIST competition
During the second workshop I taught the participants different encryption techniques, their uses and the underlying math. Students implemented historical ciphers such as Caesar, Vigenère, Substitution that have been used during wars and then implemented programs to break the generated ciphertext thereby proving themselves that the cipher was not secure. The culmination of the workshop was understanding of Enigma and RSA. Cryptography coverage |