Experience
Senior Staff Software Engineer, Meta
Summer 2025 - Present
Staff Software Engineer, Meta
Summer 2022 - Summer 2025
Senior Software Engineer, Facebook
Summer 2020 - Summer 2022
- Ads Retrieval Platform - supporting and improving some of the largest and most complex systems at Meta
- Built core frameworks that improved service reliability & developer efficiency across large, complex systems
- Devised, planned, and executed long-term, complex projects requiring multiple engineers across many teams
Software Engineer, RADAR
Summer 2017 - Summer 2020
- First backend engineering hire, initially responsible for backend, DevOps, infrastructure, IT, and networking projects
- Team lead of 3 backend engineers, including myself
- Gathered requirements, designed, and implemented backend architecture and APIs
- Retail Operations System - Distributed, highly fault tolerant service that managed all aspects of Retail Operations, incorporating both cloud and on-premise nodes
- Sensor Network Management System - Performant system that managed a network of sensors, including software configuration, updates, hardware reboots
- Access Point and Configuration Service - Service would provide aggregated configuration to an on-premise device given an identifier
- Participated in all technical meetings with customers (3 global retailers)
- Gathered requirements, planned, and designed systems to integrate with retailer's backend/data systems
- Gathered requirements, designed, and implemented on-premise and in-cloud IT infrastructure and networks
Software Engineer (Backend, Ad Tech), Spotify
Summer 2015 - Summer 2017
- Helped lead effort to redesign and build a new backend ad stack, exposing a simple ads api which allows any
client to retrieve well-structured ads for specific users. This new system removed the need for
complex parsing and business logic in the client.
- Helped lead effort to make our ad decisions "smarter", by creating a system that chooses or replaces
ads shown to the user based on optimization functions.
- Implemented capability to record impressions in real time, lowering time to discover and diagnose problems or bugs from
hours to seconds.
- Mentored new full time hires and interns
- Modernized many components of the legacy backend ad stack by utilizing new Java 8 concepts.
Software Development Engineer II, A9.com (an Amazon company)
Winter 2015 - Summer 2015
Software Development Engineer I, A9.com (an Amazon company)
Winter 2014 - Winter 2015
- Lowered time it takes for a product to be searchable in
our Image Matching system from 48 hours to less than 12 hours by
designing a system that retrieves, normalizes, and handles
real-time updates from the Amazon product catalog.
- Co-designed a mostly automated data acquisition and
ground-truthing system that acquires annotated images from
various sources, such as a mobile device, and then automatically
validates the images using MTurk.
- Increased flexibility of searchable items in our catalog
by augmenting our existing Image Matching system to include the
concept of "Apps", where each available app contains a different
set of images and will be queried in parallel. This augmented
system is being used in a very large-scale production setting.
- Mentored interns and new hires
Software Development Intern, A9.com (an Amazon company)
Summer 2013
- Implemented system to transfer large Lucene indices using
BitTorrent from a Master Node to numerous Slave nodes.
- Integrated BitTorrent into Solr for index replication –
this was all done using Java and required an in depth knowledge
of the design and architecture of Solr, which I learned very
quickly.
- Compared performance between using Solr built-in index
replication and using the BitTorrent component.
- Documented all work and results and presented project at
a Tech Talk.
Washington University in St. Louis - Research Assistant
Summer 2012
- Used manifold learning to produce an intuitive
visualization of a beating Zebrafish heart
- Researched methods to detect shadows in images which were
taken by static, outdoor web-cameras
- Maintained and improved two current websites (Full stack)
Washington University in St. Louis - Research Assistant
Summer 2011
- Developed an algorithm that produces smooth time-lapse
images of long image-sequences
- Maintained and improved two current websites (Full stack)
- Increased efficiency of a very large dataset be
implementing vertical partitioning
- Created an academic poster to demonstrate time-lapse
algorithm and other research
Balance Innovations, LLC. - Software Development Intern
Summer 2010
- Developed a database dependent application in C# to
improve efficiency of Sales Department
- Led meetings to demonstrate product functionality
Publications
Code Improvement Practices at Meta
Audris Mockus, Peter C Rigby, Rui Abreu, Anatoly Akkerman, Yogesh Bhootada, Payal Bhuptani, Gurnit Ghardhora, Lan Hoang Dao, Chris Hawley, Renzhi He, Sagar Krishnamoorthy, Sergei Krauze, Jianmin Li, Anton Lunov, Dragos Martac, Francois Morin, Neil Mitchell, Venus Montes, Maher Saba, Matt Steiner, Andrea Valori, Shanchao Wang, Nachiappan Nagappan
arXiv preprint arXiv:2504.12517, 2025.
Heliometric Stereo: Shape From Sun Position.
A. Abrams, C.
Hawley, and R. Pless.
In Proc. European Conference
on Computer Vision, October 2012.
Shadow Estimation Method for "The Episolar Constraint: Monocular
Shape from Shadow Correspondence"
Austin Abrams, Chris
Hawley, Kylia Miskell, Adina Stoica, Nathan Jacobs, Robert Pless
arXiv preprint arXiv:1304.4112, 2013.
Education
Graduation: 12/2013
Washington University in St. Louis
Bachelor of
Science with a Major in Computer Science
Second major in
Applied Mathematics
Technical Skills
Languages: C++, Python, Java, C#, Ruby, bash
Web languages: JS, Node, HTML/CSS, XML
Technologies: Docker, PubSub, Redis, RXJava, No/Sql, GCP, AWS, Azure, Dropwizard, Chef, Nginx/Apache, Django, websockets
Software: Mac, Linux
Additional Experience
Teaching Assistant, Programming Systems and Languages
Fall 2013
- Graded lab projects, assisted in lab portion of class
Teaching Assistant, Object Oriented Software Development
Laboratory
Fall 2012 / Spring 2013
- Graded lab projects, assisted in lab portion of class
Teaching Assistant, Discrete Mathematics and Logic
Fall 2011
- Graded homeworks and exams
- Held weekly office hours to help students better
understand course material
Teaching Assistant, Computer Science I
Fall 2010
- Graded homework and quizzes, assisted in lab portion of
class