About
I'm a software developer from Seattle, WA.
Programming became a hobby for me after college. I had taken some Computer Science classes for fun and learned Java. After school, the company I worked for asked me to rebuild their website. I did make them a website, but I couldn't stop tinkering. I built myself a site. I rebuilt the site over and over. I didn't care what was on it, I cared how it went together.
I learned JavaScript and PHP. I learned more and more CSS. I read a book about databases and learned SQL. Then I started learning C and Python. I was learning things I had not learned in college. I read a textbook I found about how computer processors and memory work, and how computers store and processor information.
Eventually I applied for Galvanize’s Web Development Immersive program. Now I work on a React Web App as well as a backend written in TypeScript. When I close the work computer for the day, I often pop open my personal computer and start working on my own projects.
Experience
Center ID
Software Development Engineer May 2019–PresentCenter ID is a growing company based in Bellevue, Washington. At Center I have had the opportunity to work with extremely smart and experienced engineers who have taught have continued to teach me and help me grow.
Center is not a company where developers are stuck in one small area or feature. As a result I have had the opportunity to participate in designing and improving large features and parts of the product.
- Deliver features from frontend to backend in React, Typescript and GraphQL.
- Develop and maintain microservices with Lambda, API Gateway and other AWS Services.
- Help design and implement integrations with major ERP Services.
- Code reviews, design, planning and participation in Scrum process.
Galvanize
Web Development Immersive Student October 2018–March 2019Over the course of three program, I learned to build React apps and Node.js backends. Because I had previously learned Java at UW and taught myself quite a bit of web development already, I did not actually attend the full 24 weeks. I tested out of the first month and a half of the program.
I learned used various technologies related to Node development, including:
- React
- Express
- Postgres
- Redis
- Socket.io
Other Experience...
What I did before I was a software developerI worked for an education consulting startup as a "Program Manager." Truthfully, it was a bit of an overly fancy title, my actual role was somewhat unspecific: I did everything from writing marketing material, to researching school districts to making their website.
Before that I worked as a plate maker for a small printing company. I made printing plates for big labels like Coca Cola, Monster Energy, Four Loko, and Peace Tea.
Projects
Go Router
GitHub: github.com/nolwn/go-routerWhen I decided to learn Go, one of the first things I thought I would do with it was build a web API. I had read that Go's standard libraries had just about everything you would need, so I decided I would take as few dependencies as possible.
I quickly discovered that the default router that Go's http library uses does not support path parameters. So I wrote my own!
I wanted Go Router to fit very naturally into Go's http package, so it implements http.HandlerFunc. It uses a tree to keep track of the handlers instead of regex.
The result works great and is super easy to use. I've been able to reuse it whenever I want to build a web API in Go.
Detective
GitHub: github.com/nolwn/detectiveDetective is a library I'm working on in Deno for creating text adventures. I've found old games and text adventures fascinating since I was a kid.
I started Detective thinking I was going to make a text adventure, but I quickly discovered that my interactive storytelling was as uninspired as the name "Detective." Plus, the most interesting part of making it was writing the code anyway. So instead I built library that I or someone else could use later to make a game.
Does it do everything you would need to build interactive fiction? I have no idea, I didn't actually use it to build a game. But it is super cool because it allows you to write your game in JSON with some simple rules.