Space Cat, Prince Among Thieves

About the Author

Jesse G. Donat - a man of passionate integrity.

Jesse G. Donat is a PHP / Go / TypeScript developer out of Minneapolis.

He's worked on a very wide variety of projects over his career which started in 2006.

Bio

In the mid-1990's my family was gifted a monochrome 286. It was already ancient for the time and had very few programs or games. It did however have a copy of QBasic. I was fascinated and spent countless hundreds of hours learning to program using its fantastic built-in help. I wanted to make my own games. I was 10 years old at the time. I've been programming ever since.

In 2001, at the age of 14 I registered my first domain name. It started out hosted on Geocities; we used Blogger to update the site via FTP. I soon became frustrated with the limitations of Blogger and Geocities. A friend gave me some web space on his webserver and I started using SSI's (server-side includes) to make the site easier to update. When I became frustrated with the limitations of server side includes, my friend suggested I learn PHP and MySQL. That's how I really got my start in web development.

In High School I did a half-year independent study of C and C++ programming, I also took a class on Oracle SQL.

I attended a local 2-year college for Computer Science. While there I learned Java and .NET. I learned a lot of fundamentals like data structures (linked lists, stacks, queues, trees, etc), algorithms, and architecture that I wouldn't end up using until years later, but was grateful to have learned about them when I needed them. I honestly think these fundamentals have given me a little bit of a leg up on my peers who didn't go to college for CS.

After graduating from college in 2006, I began searching for .NET jobs as I had really enjoyed working with it in college. At the time however, there were seemingly very few available in my area. I was also looking for Java jobs, but despite many interviews I was unable to land a job.

I ended up falling back on that early experience with PHP and MySQL and found a job as a PHP developer with a small company that developed B2B software for industrial companies. It was honestly amazingly fun and I learned a ton. The pace was brutal looking back, but I was young and quite eager to learn. We would spend 2-3 weeks on a project and then move on to the next one.

We built an insane amount of cool software in that time. Among my favorites were a realtime worksite noise monitoring system, and a "configurator" for a steel manufacturer. The configurator allowed their customers to design custom scaffolding and factored in the seismic data for the installation location. I was at this company for a little over 5 years and worked my way from Junior Developer to Lead Developer. Towards the end of my time there, I was responsible for the architecture of the software, the database design, and overseeing a team of five other developers.

If I'm honest, I hated the management side of things. I spent probably close to a third of my time in meetings with clients, and the other third in meetings with coworkers. To keep up with the pace of development, I was working 60-hour weeks. I was also on call 24/7. I was young and single at the time, so I didn't mind the hours, but I was getting burned out.

Right about then, a friend contacted me about a job at his company, a local children's book publisher. The team itself was a very recently acquired startup tasked with building a new online reading platform for the publisher. The publisher liked their work, so they bought them out. The atmosphere was electric. The team was small, and we were all very close. We worked out of a converted garage in a former apartment complex. The company was very laid-back and the hours were very flexible.

The publisher fell on hard times, and to make ends meet, they sold us and our product to a much larger company. That's where I am today. I am a Senior Software Engineer for a large educational company. Still on a small team with many of the same people. We try to keep the "startup" feel, but it's challenging in a big company.

I work on a reading platform for students sold directly to schools. We have hundreds of thousands of active users, learning how to deal with that kind of scale has been the most interesting challenge of my career.

Technologies

As I mentioned, I got my real start with PHP and MySQL. I've been working with PHP for over 20 years now, and that really makes me feel old.

I've been working with Go for over 10 years now. I started getting interested and learning about it at my previous job, but there were few opportunities to use it.

I honestly adore Go. It's a simple language, but powerful. It's easy and sane to develop fast code in Go. It's also remarkably easy to deploy given everything compiles to a single binary.

I primarily work on a PHP monolith using AWS Aurora MySQL, Redis, and Memcached. This is flanked by a number of microservices written in Go for things that require a higher level of optimization. I believe this is a pretty ideal setup. The PHP monolith is straightforward to maintain and has a lot of constraints to keep things from getting out of hand. The microservices are fast and easy to deploy.

We've been working with Go for almost ten years now, and I've been delighted with it.

Interests

I've always had an interest in digital art. These days, I don't spend as much time with it as I used to or as I'd like to and I wouldn't say I'm good at it, but I've always enjoyed it. I've been using Photoshop since I think version 3.0 on Mac OS 9. For someone whose title is "Senior Software Engineer" I honestly end up still creating a lot of the graphics for our software.

I'm also a music lover. I have no sense of time or rhythm, so I've never been able to play an instrument. That said, I've always loved to listen to music. I've got a pretty wide range of tastes, I don't know if there's a genre I dislike. I've been listening to a fair bit of classical lately, but I also enjoy metal, punk, and hip hop. I'm a big fan of late 1990's/early 2000's trip hop and ska and really wish those genres would make a comeback.

Contact me:

Links

 

Last updated: