Home / About
Hi I'm ashn. I am a professional software developer and hobbyist hardware tinkerer with an interest in systems programming, embedded development, and programming language design. I am currently employed as a software engineer in the automotive industry working on charging infrastructure for electric vehicles. Outside of work I enjoy creating free and open source software for POSIX systems, some of which I blog about on this site.
Information for Potential Employers
I have over half a decade of experience writing C as a hobbyist and over three years of experience writing C and C++ in a professional setting. I have spent the last two years at my current company writing C (embedded), C++, Python (mainly tools), and lots and lots of shell scripts. I tend to work primarily on and with Linux-based platforms, although I do have some experience with application development for Windows Desktop, and I maintain our Windows CI infrastructure. I run Linux (usually some flavor of Debian) on my personal machines and cloud instances, but would be comfortable working in other POSIX environments.
- The Sunder Programming Language: Work in progress C-like systems programming language for x86-64 Linux. Written in C99 with some NASM-flavored assembly. This has been my primary side project for the past 8 or so months. The project recently had its first release which you can read about in this blog post.
- Autil: Set of header-only libraries containing data structures and algorithms for rapid application development in C99. Includes utilities for arbitrary precision integer arithmetic, managed strings, interned strings, bit-arrays, stretchy buffers, generic tree-maps, generic lists, a minimal unit testing library, a minimal 2D game engine, and much more! Written in C99. This is an updated-as-needed project that provides a base set of utilities for use in my other projects.
- Braille Apple: One of my recent mini-projects. Renders Bad Apple!! in the terminal using braille patterns. This is an example of a quick one-off project thrown together in a night, kind of as a meme. Rendering Bad Apple through obscure and esoteric methods is popular within the demoscene, as is the case with this project where frames are rendered using characters from the Unicode Braille Patterns Block. Here is a side-by-side comparison of the original video (left) and my render (right) for those who are interested. I had so much fun with this mini-project that I went on to create an entire 2D graphics library in Python for drawing/rendering images using braille patterns.
Additional projects can be found under my projects page, listed by date of initial release in reverse chronological order.
For privacy reasons I use separate contact information for public and private communication channels. Potential employers, please contact me using the personal email (preferred) or phone number listed on my resume.