Hi there, I'm

Chris Pyles

I'm a software engineer, currently working at Google, with experience in web development and educational technology.

Experience

  • Google
    May 2022 - Present
  • IXL Learning
    July 2021 - May 2022
  • Microsoft
    October 2020 - June 2021
  • UC Berkeley DSEP
    May 2019 - June 2021

Software Engineer

Google, May 2022 - Present

At Google, I work as a full stack engineer on an internal capacity management platform that serves over 25,000 services across the organization. One of my largest contributions is the capacity projection validator I redesigned and now own end-to-end — a system that evaluates roughly 100,000 daily proposals to ensure they meet service owner requirements and don't violate configured constraints. I also built an orchestration application that coordinated automated and manual service moves across multiple stakeholder groups, which has been used to move over 10,000 services. Beyond feature work, I've championed efforts to reduce technical debt, including a refactor of our demand charting system that cut loading times by 80%, and improvements to our application's filtering system that meaningfully increased user productivity.

Software Engineer

IXL Learning, July 2021 - May 2022

At IXL Learning, I was part of the Teacher Experience team, building tools that shape how instructors interact with IXL's platform. My most impactful project was developing personalized learning paths tied to students' NWEA MAP test scores — a feature that is now actively used by over 250,000 students nationwide. I also architected a follow-on project to clean up the technical debt introduced by that feature, pulling hard-coded logic out of the codebase and into flexible database tables. Within my first six months, I planned and led a project to support skill plan pinning for individual classes, which required new database schemas, refactoring of existing infrastructure, and new frontend components — all shipped on schedule.

Contract Software Engineer

Microsoft, October 2020 - May 2022

At Microsoft, I architected and engineered an open source Python auto-assessment solution called PyBryt that implements a unique autograding structure grounded in the philosophy that intermediate to advanced programming courses should not require students to follow a rigid scaffold for solving problems. I provided engineering support to a series of pilots of PyBryt in courses of up to 1,200 students per semester at UC Berkeley, Imperial College London, and Tel Aviv University. I spent most of the first half of my time at Microsoft working on the initial release of and developing new features for PyBryt.

In the latter half of my time at Microsoft, I shifted focus to driving the adoption of PyBryt beyond its pilot courses (while still working on feature development). I created a GitHub Action to automate the use of PyBryt as a continuous integration tool for student repositories; I then used this Action to orchestrate a full-scale implementation of a real-world grading pipeline using GitHub Classroom for collecting different implementations of algorithms to be used to construct exercises for interactive Microsoft Learn modules. I also authored a blog post and two Microsoft Learn modules on an introduction to and advanced uses of PyBryt geared towards academics looking to adopt the solution.

Lead Developer

UC Berkeley Data Science Education Program, May 2019 - June 2021

I led a team of 8 developers working on 3 concurrent open source projects at a time often using previously-unfamiliar technologies. We used Agile methodologies to organize development cycles and encouraged parallelization of tasks, including performing code review and facilitating weekly meeting standups.

The main project I worked on is an open source Python and R autograding solution, Otter-Grader, that scalably grades students' programming assignments and abstracts away autograding internals for instructors, which has been adopted in several courses at and outside of UC Berkeley and has used to grade assignments for over 10,000 students at UC Berkeley alone. Part of this work has been creating an open source community for development around GitHub and a public Slack to allow instructors and contributors to communicate effectively and to allow iterations on the package to be a community effort. I also led an interactive hands-on demonstration of autograding solutions and a presentation on the engineering and infrastructure constraints of those solutions at the 2020 National Workshop on Data Science Education.

Education

Georgia Institute of Technology

Master's Degree in Cybersecurity

Estimated Graduation: August 2027 (part-time)

University of California, Berkeley

Bachelor's Degree, Major: Computer Science and Data Science (with Honors), Minor: Demography

August 2017 - May 2021

I graduated from UC Berkeley, earning a Bachelor's degree in Computer Science and Data Science. While at Berkeley, I tried to get involved in the campus communities surrounding my majors; I worked for two years at the Data Science Education Program, a subdivision of UC Berkeley's Division of Computing, Data Science, and Society. At DSEP, I worked not only as the lead developer for their infrastructure team, but also as a contributor for the data science curriculum and, eventually, as a TA for Data 100, a core upper-division data science course.

Skills

Languages

Python logo Python
TypeScript logo TypeScript
Golang logo Go
JavaScript logo JavaScript
OpenJDK logo Java
R logo R
Ruby logo Ruby
Julia logo Julia

Frameworks

Angular logo Angular
React logo React
Django logo Django
Apache logo Apache Struts
Rails logo Ruby on Rails
Next.js logo Next.js

Tools

Git logo Git
Jupyter logo Jupyter
PostgreSQL logo PostgreSQL
Docker logo Docker
Google Cloud logo Google Cloud

Open-Source Projects