• Christofer Forbes

    Software Engineer

About Me

I'm a software engineer based in Seattle, WA. I recently graduated from the University of Washington with a Bachelor of Science in Informatics with a focus on Software Development.

I am passionate about using my full stack software development skills in creating intuitive applications to solve various information problems that'll benefit people and society.

Outside of work or school, I love playing tennis and I'm a huge music geek, nerding out over a capella arrangements and pop / R&B runs.

Please check out some of my work below!

Skills

I'm driven by curiosity and my skillset is always changing. So whether I'm proficient in a technology or just familiar, I'm passionate and have a deep desire to learn, both professionally or on my own time.

Here are the technologies that I've worked with!

code
Languages

CSS, HTML, Go, Java, JavaScript, Python, SQL, TypeScript

Bash Script, C, C++, C#, Kotlin, R

settings
Frameworks

Express, Next.js, Node.js, React

ASP.NET Core, Angular, Redux

build
Tools

AWS, Docker, GCP, Git, MongoDB, Postman

Azure, Redis, RabbitMQ, Websockets

Experience

Click on an image to learn more!

Software Engineer

Facebook

November 2020 - Present

Facebook's Metric Search Operations Team

Software Engineerclose

I develop internal tools to help in the labeling of machine learning data.

This role is an assignment through TEKsystems.

Software Engineer Intern

Computing ReApplied

June 2020 - November 2020

Contributed to development of MyMedDiary.

Software Engineer Internclose

I currently am working on the REST APIs for MyMedDiary. These endpoints are responsible for allowing users to log symptoms and dietary habits.

I'm also in the process and the restructuring of the database schema and back-end codebase to be easier to maintain, helping in front-end migration from React JavaScript to React TypeScript, and implementing a CI/CD pipeline using Azure DevOps.

Student Developer

University of Washington Transporation Services

October 2018 - July 2020

Developed various automated systems for internal workflows.

Student Developerclose

The first project I worked was to send automated survey emails to those that utilize the Arranged Parking services when arranging events on UW campus.

The Parking Operations team within UWTS has a system in place where they manually enter the requests into a spreadsheet which is then translated into visual information in Tableau. I developed a program that reads this spreadsheet and will send emails to event arrangers three days after the event occurred.

With this newly implemented pipeline, our Arranged Parkings team received around 50-100 feedback surveys every month. This helped in improving the quality of the customer service given by the Arranged Parking team.

The second project I engaged in was an acknowledgement system for UW student employees. I utilized Humanity's API to grab scheduled shifts and created a dashboard that helps managers and program coordinators keep track of people's acknowledgement to come into a shift. This allowed for better preparation during big UW events.

Teaching Assistant: Server-Side Development

University of Washington Information School

March 2020 - June 2020

TA'ed for a class that taught server-side web development skills.

Teaching Assistant: Server-Side Developmentclose

I was one of the Undergraduate Teaching Assistants for INFO 441: Server-Side Development for Spring 2020. This is a course offered by the Informatics program at the University of Washington.

This course focuses on server-side web development. The version of the course I assisted in utilized AWS EC2 for the cloud service and infrastructure, Docker to containerize programs, Go, Node.js, and Flask for writing REST API services, MySQL, MongoDB, and Redis for databases, and websockets for asynchronous messaging.

My main function was to help students in understanding the concepts taught in class and help them apply these skills to their assignments and final project. The TA and I recorded videos for lab sections and wrote up tutorials to help break down difficult topics within the class. I held office hours to answer questions and help debug assignments, and conducted code reviews while grading programming concepts.

This course is notoriously difficult within our program because it covers a variety of topics including Back End Development, DevOps, and Infrastructure. However, the course I assisted had a higher performance than past courses offerings. I was able to find flaws that I noticed when I took the course, and helped break down topics that are difficult to understand. The instruction team also removed some assignments that took away from understanding the core fundamentals.

Software Engineer Co-op

AdaptiLab

January 2020 - May 2020

Worked on AdaptiLab's "HireAssist.ML" for my co-op and capstone.

Software Engineer Co-opclose

I got to work with AdaptiLab as a co-op for Winter and Spring of 2020. This was my Capstone project for the Informatics program.

Our aim with HireAssist.ML was to streamline and automate the job application process by creating a Chrome Extension that will recommend jobs for you to apply, and autofill repetitive information on online job applications.

I was involved throughout the entire software development life cycle process, from conducting user research, to designing user stories and wireframes. Ultimately, I focused on implementing the infrastructure and code for the back end services that powered our finished application.

Projects

Click on a project image to learn more!

Key Signature Visualizer

October 2020 - October 2020

Technologies: Next.js, TypeScript, Anime.js, Bootstrap, Figma, Vercel

Key Signature Visualizerclose

I created a simple web app that allows for someone to choose a musical scale of their choice and will animate the creation of their key signature. A treble clef and a bass clef are included to display note location as well as reveal the accidentals to make the key signature. A keyboard is also shown to display the image.

Updates will be included for optional step by step iteration, new musical modes, highlighting keys on the keyboard to better visualize the scale pattern, and sound to play each key signature.

There are also long term plans to make this one module of a music theory tutor application.

MyMedDiary

June 2020 - August 2020

Technologies: Azure, C#, React, SQL, Xamarin

MyMedDiaryclose

"MyMedDiary", is a mobile app/web portal pair, from "Computing ReApplied", that allows patients to log their food intake on their phones and illness symptoms they may have. The information will then be processed and visualized for them to keep track of their nutrient intake. Doctors can see their patients' daily intake and make data driven diagnoses based on this information.

The MVP of the project was launched and is currently being used by Seattle Children's in a pilot study. The application will continue to be updated and maintained.

HireAssist.ML

January 2020 - May 2020

Technologies: Docker, Firebase, Express, GCP Cloud Run, Node.js, React

HireAssist.MLclose

This was a project for my co-op at AdaptiLab. This also served as my 2020 Capstone for the Informatics program.

My team wanted to help streamline the job application process. This project aims to parallel AdaptiLab's business model, in which they provide a streamlined platform for tech companies to find future employees and candidates.

HireAssist.ML streamlines the job application by providing job recommendations based on one's resume, and will also fill out repetitive information in online applications. We created a Chrome Extension that provides all these services and will always be accessible within the browser. By providing these services, job searchers can fill out many job applications quickly, allowing them to more quickly land their next opportunity.

I was involved in all aspects of the software development lifecycle: conducting user research, designing wireframes and prototypes, and development. I was ultimately responsible for establishing a serverless cloud architecture using Google Cloud Run, writing our back end application using Node.js, and deploying our application to the cloud with Docker.

Chat App

January 2020 - March 2020

Technologies: AWS EC2, Docker, Go, MongoDB, MySQL, Node.js, RabbitMQ, React, Redis, Redux

Chat Appclose

I wrote a Slack clone chat application to help me understand end-to-end infrastructure of an interactive web application.

This application uses React for the front-end interface, Golang for handling authentication, Node.js microservices to handle channel creationg and sending messages, websockets amd working queues to handle realtime interaction, Docker to containerize services, and AWS EC2 for the main infrastructure.

I learned how to deploy applications, write RESTful API services, very basic distributed system concepts and microservices.

MTNEAR

November 2019 - December 2019

Technologies: JSON, Kotlin, XML

MTNEARclose

This Android application uses REI's outdoor API to list and show nearby hiking trails and climbing routes.

We allow users to filter out the types of trails and activities to better suit their capabilities. The user can then see how far the trail is, and basic information about the trail. They can then share this with their friends.

I administered a team of four to discuss requirements and assign tasks to complete the project. I also developed the list view portion of our application.

This project was for an Android Mobile Development course in my undergraduate program.

SendNews

October 2019 - December 2019

Technologies: React, Heroku, Firebase, Google Apps Script

SendNewsclose

I worked on a team of 5 to create a simple news feed application with a quiz feature that allow people to make/take quizzes. The goal of the application is to game-ify reading the news and allow people to gain points after taking a quiz. A leaderboard is present that displays users with the most points.

I mainly worked on the front end of the website, by creating the card components for each news article. We used React for our front end framework. I also was responsible for automating API calls to receive the latest news articles. We used the News API to receive our data. I then used Google Apps Script to trigger a script that retrieves new articles every 30 minutes. This script then connects to our Firebase database which then populates our news feed. The application is hosted on Heroku.

The project was for a Cooperative Software Development class within my undergraduate program.

Music Festival Database

September 2019 - December 2019

Technologies: SQL Server

Music Festival Databaseclose

I worked on a team of four to create a relational database to streamline and optimize the musician lineup decision making process.

The goal of this database is to provide easily accessible, pertinent information that would allow organizers to construct organizers to construct a financially viable andd entertaining event for their consumer base. This database can keep track of each step of the decision making process and keep track of certain data.

I wrote SQL scripts to create the Contact, Cost, Agent, and Talent entities. I also wrote stored procedures and complex queries related to these tables. Our team went through several iterations of normalizing and optimizing the database. We also diagramed the scheme of our database using Crow's Foot notation to figure out relations between entities.

This project was for my Database Design and Modeling course in my undergraduate program.

Contact Me

Please feel free to send me an email about any opportunities!