Verified Expert in Engineering
Donovan is a software development engineer fond of programming language design and distributed systems. He's the first author of an IEEE published paper on network security and has contributed to many open-source repositories like Google's Puppeteer and pytube. In his free time, he challenges himself to recreate standard tools from scratch to better understand how they work and their limitations. This has led him to create his programming language, operating system, and web proxy.
The most amazing...
...project I've solely authored is a mod for Mount and Blade, Bannerlord, that has over 500,000 downloads.
Continuous Integration Engineer
Leading Autonomous Vehicle Company
- Built automated system, leveraging buildkite to build and executed tests on hardware-enabled systems. This decreased developer testing times from one week to one day by leveraging nightly scheduled builds.
- Designed and implemented the system using Google Storage to automatically upload and process JUnit reports from any number of developer jobs into a summary report and final build status.
- Refactored a major python three testing library to enable developers better maintainability and reliability.
- Helped design system that scaled from 1 test machine to 15+.
- Improved production package distribution with Ansible and Jenkins, decreasing the release time by 86%.
- Located and fixed an off-heap memory bug involving the misuse of the Java Native Interface.
- Built a system for tracking internal tool systems in React, served by Node.js. This system allows developers to easily locate and submit links for tools they use so that other developers can find them.
- Helped containerize a flagship application into Docker to improve scalability in an orchestration engine, Mesosphere.
- Maintained a system that leveraged Java with Spring, Hibernate, and Dagger, backed by PostgreSQL, Cassandra, and Aerospike.
- Designed a WebGL library to optimize rendering front-end map data, decreasing load times by 95%.
- Engineered data formatting tools to allow faster data integration for the National Weather Service.
- Updated an FTP fetching mechanism to reduce data ingest times by 600%.
- Automated the analytics tracking workflow, allowing more up-to-date business insight using Java.
- Built a simple proof of concept Android app for augmented reality tours in our 3D maps in Java.
Boulder Valley School District
- Fixed an issue with images passing through the F5 bouncer in Infinite Campus using Java.
- Designed and implemented the Infinite Campus module for tracking student progression through the English language learning track in C#.
- Optimized SQL queries to dynamically update table column names instead of a hard-coded list with C# and MS SQL.
I built this interface to allow easier manipulation of blocks and structures without fully loading and simulating the world.
Skiff is fully garbage collected and features a native API that allows for easy interoperability with C: Skiff libraries can provide functionality to a language that generally requires direct support. The Skiff file I/O package, for example, is completely replaceable as needed.
I designed this project as an experiment into the inner workings of a programming language and compiler, hoping that it will allow complete compilation into C.
We examined the throughput of several popular IP blocklisting approaches and concluded that Cuckoo Prefix gave the best trade-off between throughput and memory. In addition, we found that most modern blocklists are approaching a state in which a bit set is an optimal implementation for IP blocking. We also discovered that EBVBL provides extremely high throughput. EBVBL delivers a much smaller but equally fast alternative to bit sets for memory-rich, time-sensitive applications.
Silent Auction Sitehttps://github.com/fairviewhs/silent-auction
I designed this application to run behind Nginx with Redis for session tracking and MySQL for state management.
Back-end, AWS Cloud Development, Data Structures, Programming Languages, Compilers, Async/Await, Async.js, Multithreading, TCP/IP, Pipelines, CI/CD Pipelines, PostgreSQL 9, Ubuntu 16.04, Ubuntu Server, IP Networks, AWS DevOps, Amazon Kinesis, RPC, Cloudflare, SSL, SSL Certificates, Transport Layer Security (TLS), Apache Cassandra
Spring 5, Express.js, Spring, Spring Boot, Redux, JUnit, .NET, PixiJS, MUI (Material UI), Ruby on Rails 5, Hibernate, Next.js
React, Node.js, Ts-node
Jenkins, NGINX, AWS SDK, Shell, Terraform, Ansible, Amazon Simple Queue Service (SQS), Mongoose, Sequelize, AWS Step Functions, Vault
Compiler Design, Microservices, Continuous Integration (CI), HTML DOM, Continuous Delivery (CD), DevOps
Ubuntu, Amazon EC2, Amazon Web Services (AWS), Docker, JVM, AWS Lambda, Windows Server, Kubernetes, Buildkite, Google Cloud SDK
Amazon S3 (AWS S3), MySQL, Redis, PostgreSQL, PostgreSQL 10, MongoDB, Amazon DynamoDB, XML-RPC, Cassandra, Aerospike, Google Cloud, Google Cloud Storage
Bachelor's Degree in Computer Engineering
Santa Clara Univeristy - Santa Clara, CA, USA