I am a freelance Software Engineer based in Berlin. I primarily work in Backend Engineering preferably with Python or NodeJS. I also have experience with C++, Terraform, Mongo, Azure, and working as a Fullstack Engineer.
I studied Computer Science at New York University where I earned a Bachelor's in Arts and Sciences. I interned for Spotify as a Backend Engineer working in Java and Adobe-Behance as a Front-End Engineer working in Javascript, HTML, and CSS. I also worked at NYU's Music and Audio Research Lab (MARL) working on an open source library called Librosa.
Since graduating I have worked as a Backend Engineer at Meetup working in Java and occassionally Scala. I then moved to Berlin to work for Ableton. I first worked in Developer Tools working on CI/CD Pipelines and Cloud Computing. Afterwards, I worked on the Live team working on prototyping for MIDI clip generation and pushing software improvements for musicians.
I'm passionate about delivering high quality and well-written software and creating an empathetic and healthy team environment.
Outside of tech, I enjoy music, food, wine, and nonalcoholics. If you're interested, you can check out my Instagram to learn about what I've been making and brewing at home, and you can also listen to my music on Bandcamp.
Designed and developed a web application from a foundational setup, taking full responsibility for implementing and making critical decisions regarding the architecture and technical design of both the frontend and backend. Focused on future-proofing the code and reducing legacy code while adapting to a fast-paced environment. Wrote code using React for the frontend, Express for middleware, NodeJS for the server-side logic, MongoDB for data storage and retrieval, and Vitest for backend and middleware tests. Ensured the application was maintainable, and aligned with best practices for modern web development.
Continuously enhanced debugging capabilities in VSCode, optimizing efficiency and effectiveness. Actively engaged in thorough review and refinement of pull requests to ensure high-quality code delivery. Implemented Continuous Integration with GitHub Actions to minimize errors in code commits, optimizing developer efficiency and reducing rework.
Offered strategic consultation on application security, infrastructure scalability, optimal deployment strategies, and targeted hiring initiatives, alleviating CEO workload and fostering organizational growth.
This project is still under NDA.
Finish general improvements requested by musicians to Live 12. Some examples include: Soloing, muting, and adjusting the volume of multiple devices within a rack, inserting markers with shortcuts in Automation mode, and deleting tempo automation when deleting a track whose tempo is being followed. This required working with legacy code in C++ and working across teams to debug audio engine code.
Create a prototype for generating MIDI chords as part of developing the new MIDI Tools. I created a prototype which was a grid where the x-axis represented a possible chord within the scale and y-axis represented the note. The prototype also allowed you to select different scale. The project involved working with designers to create an interface and a deeper understanding into music theory.
Prior to this project, the team was running their microservices in an office room. We decided that this was no longer a stable and sustainable way to run the services since we were a remote team and the IT department had to assist us when we needed access to the servers. As a result, we migrated our microservices to Azure using Kubernetes and Terraform and monitored them using Grafana.
Before this project, test coverages were non-existent and a developer had to manually quality check and deploy code by running commands to a remote server on their development computer. There were two tasks for the team. The first task was to build a pipeline with AWS ECS which was accessible via GitHub to automate code deployment upon merging. The second task was to employ test coverage within the codebase which was accessible within GitHub to maintain and improve code quality. For the project, the team worked with mob programming.
The goal of the project was to improve Librosa's commonly used functions using Numba. I worked primarily on the match events function. The biggest challenge was that there was Python functionality which Numba did not support, which had to be rewritten in NumPy. Numba-fying match events led to a 30-90x speed up in the codebase. I also used Jupyter Notebooks for benchmarking. You can also view the pull request here.
Created a new logout page to reflect the new design principles and theme of Behance. One of the goals was to give the users a brief yet clear understanding of what Behance offers as a product and inspire curiousity for potential users to get started. For the project, I worked with HTML and CSS and often communicated with designers to create a polished product. The logout page was used from 2016 until early 2024.