Work Experience

Samsung

Engineer (Vulkan Drivers)

August 2022 - Present

After my summer internship at Samsung SARC/ACL I decided to join full time after completing my degree. This time, however, I changed teams to work on Vulkan drivers. I did this because I wanted to try something new, and because Vulkan was something I had never tried but had some interest in after my computer graphics courses at UIUC.

This is my current position, so I will continue to update with details.

Samsung

GPU System Software Intern

June 2021 - August 2021

In the summer of 2021 I interned at Samsung’s Advanced Computing Laboratory in San Jose (remotely). I was a part of the mobile GPU system software team, specifically working on pre-silicon simulation. My project was about using the open source tool Verilator to create cycle-accurate C++ models from Verilog/SystemVerilog RTL.

A large part of my time was spent learning about GPU hardware and how it is used by application level software. This helped me gain an appreciation for graphics APIs like OpenGL and Vulkan.

In addition to learning more about the graphics pipeline I also developed my debugging and documentation skills as I used Verilator. As incompatibilities between our RTL and Verilator’s expectations arose, I created minimal reproducible examples of each error I came across and wrote documentation as well.

At the end of the summer I had verilated a few submodules including cache and computation modules and documented about 20 issues with examples, explanations, and workarounds.

University of Illinois

Undergraduate Teaching Assistant

Spring and Fall 2021

I worked as a TA for ECE 391: Computer Systems Engineering for two semesters in 2021. The class is notorious in our curriculum for being a challenge but I loved it, especially after completing the final project. I have always enjoyed the special test of knowledge that is teaching, so I jumped at the opportunity to join the course staff for ECE 391.

The undergraduate TAs for this class are much more involved than in others — the course is almost entirely project based and that requires a lot of supplemental teaching and support by the TAs in office hours. Taking 391 also taught me to enjoy bug fixing, which is a staple challenge of the course and one students reach out to TAs for help with often.

AARP's The Tech Nest

Software Engineer

May 2020 - December 2021

My internship at The Tech Nest focused on building a smart-speaker voice application for AARP’s Staying Sharp program. During the summer of 2020 I worked there full time, and me and my partner took a set of trivia questions and created a quiz game. Voice applications are tricky because navigating many options quickly becomes annoying. We tackled that challenge through continuous user testing and feedback to refine the layout.

Also during the summer we had a second project: a design thinking challenge with AARP’s Experience Corps, a volunteer tutoring group for older adults. Our task was to come up with ways in which the Experience Corps program could better accommodate volunteers with disabilities. We followed a full design thinking paradigm including brainstorming, developing empathy, end-user interviews, and more. In the end we created a set of proposals for the Experience Corps to put into place for the following year.

Finally, I continued part-time with The Tech Nest in the following fall semester. We continued work on the voice application, this time adding integrations with Staying Sharp accounts and other special feature requests.

Nokia

R&D Intern

June 2019 - August 2019

My first internship took place at Nokia on the 5G and Small Cell team, specifically within fault correction. My main project was to use data analytics to identify bottlenecks in the fault correction process. I used Microsoft Power Query M language to calculate statistical metrics about the process and Power BI to create dashboards to display these metrics.

At the time I hadn’t studied statistics formally, so there was a lot of learning on the fly, both with the technical tools and the underlying math. A big confidence boost for me was that my manager had a lot of trust in my decision making. I was invited to several meetings where my metrics were used as the starting point for conversations about improving fault correction processes. At the beginning these meetings were extremely helpful because they gave me the necessary context to understand which metrics were truly important. Towards the end, as I began to better understand the company as a whole, I was able to justify my choices well and get the ball rolling towards making a change.

Also during this internship we had an intern robotics challenge which you can read more about here.