Why do you want to become a MLH fellow?

I really like the MLH organization and think it contributes greatly to making CS fun! I’d like to join the MLH fellowship so that I can build cool stuff! I want to contribute to pivotal and important software projects that are technically rewarding. I want to work on codecs, graphics engines, database systems, compilers, multi-threaded backends, anything that is technically complex.

What made hackathons so appealing to me was watching the final winners reveal their project and to see them explain how they built it. The first hackathon I went to - Terrahacks I saw William Wang present his AR/VR app designed to simulate animal behaviors in the real world. I thought this was so cool, and wanted to get to that point where I could build something quick and fleshed-out enough in that same amount of time.

Ive done 15 or so hackathons as of date, but I realized that hackathons really doesn’t cater to building things in full, but rather hastily putting things together. Most projects are AI wrappers that have been done quite a few times - not to say I haven’t built any, but I really hate offloading work to AI.

But working on full projects is immensely satisfying. I’ve recently built my first compiler and almost finished my a custom chip-8 virtual machine.

My path down the line seems to lineup somewhere within backend development and security. Everybody in this field is so immensely motivated and doing such cool work. There is this local hackerspace Hacklab.to where people build for the sake of building. There is a wirelessly controlled video grid that was developed from a reverse-engineered traffic sign. There was a wetlab where people were growing their own organisms. I thought this was really awesome. I think being around these people is very worthwhile, and the main reason I go to hackathons and conference events.

What perspective or Experience will allow you to bring to the fellowship?

My background comes from cybersecurity, but I have recently been working on low-level programming in compiler and emulator development. I have experience working on full-stack web development and systems design through personal webapps I have developed and the process of self-hosting them. I find low-level programming so fun - especially compiler and language development because it activates a certain part of your brain reserved for logic, and allows you to think about problems at a meta-level (especially functional programming). I’ve found myself applying recursive descent rules and BNF grammars to assist in parsing backend systems in webapps. I’ve found using functional programming concepts - especially reflection in python to be useful in debugging code through debuggers.

My background in cybersecurity is also important to ensure that things are being developed properly - following a secure SDLC that promotes early-stage vulnerability software composition analysis to reduce security gaps. It also provides me a deeper understanding at how web frameworks actually work - like how reactjs server components parse each request - and how you can create custom-defined function references to trigger arbitrary code execution (NextJS 10.0 CVE)

Ive also done alot of work reverse engineering software. Given a unknown software system or software bug - I can efficiently debug, decompile, fuzz or diff to find key parts of code logic that lead to certain behaviors.