Donovan Allen, Full-stack Developer in Redmond, WA, United States
Donovan Allen

Full-stack Developer in Redmond, WA, United States

Member since September 15, 2021
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.
Donovan is now available for hire

Portfolio

  • Leading Autonomous Vehicle Company
    Buildkite, Docker, Python 3, Python, Bash, Vault, Google Cloud...
  • Sovrn
    JavaScript, AWS, Terraform, Java, Ansible, Jenkins, Spring 5, React, Node.js...
  • NOAA
    JavaScript, Perl, PixiJS, XML, HTML5, HTML, HTML DOM

Experience

Location

Redmond, WA, United States

Availability

Part-time

Preferred Environment

Ubuntu, Java, JavaScript, AWS, Python

The most amazing...

...project I've solely authored is a mod for Mount and Blade, Bannerlord, that has over 500,000 downloads.

Employment

  • Continuous Integration Engineer

    2021 - 2022
    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+.
    Technologies: Buildkite, Docker, Python 3, Python, Bash, Vault, Google Cloud, Google Cloud SDK, Google Cloud Storage, Shell, JUnit
  • Engineering Developer

    2018 - 2019
    Sovrn
    • Built a global click tracking system with JavaScript, AWS, Terraform, Java, and Spring, scaling it to one million requests a week.
    • 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.
    Technologies: JavaScript, AWS, Terraform, Java, Ansible, Jenkins, Spring 5, React, Node.js, Amazon Web Services (AWS), TypeScript, Back-end, Python 3, Python, Microservices, Docker, Async/Await, Async.js, Multithreading, DevOps, AWS DevOps, Continuous Integration (CI), JVM, MySQL, PostgreSQL, Amazon S3 (AWS S3), Amazon EC2 (Amazon Elastic Compute Cloud), AWS SDK, AWS Lambda, AWS Step Functions, AWS Kinesis, Kubernetes, XML, TCP/IP, Pipelines, CI/CD Pipelines, Continuous Delivery (CD), AWS Cloud Development, Hibernate, Cassandra, Apache Cassandra, Aerospike
  • Developer

    2017 - 2017
    NOAA
    • 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%.
    Technologies: JavaScript, Perl, PixiJS, XML, HTML5, HTML, HTML DOM
  • Intern Developer

    2016 - 2016
    Concept3D
    • Automated the analytics tracking workflow, allowing more up-to-date business insight using Java.
    • Contributed to an online booking system for stadiums and conference halls with JavaScript.
    • Built a simple proof of concept Android app for augmented reality tours in our 3D maps in Java.
    Technologies: Java, JavaScript, Ruby on Rails 5, React, MongoDB, Mongoose, Sequelize, JVM, PostgreSQL, PostgreSQL 10.1, XML, HTML
  • Intern Developer

    2014 - 2015
    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.
    Technologies: C#, Java, .NET, Windows Server, SQL

Experience

  • PyAnvilEditor
    https://github.com/DonoA/PyAnvilEditor

    A Python library used for modifying Minecraft maps in the Anvil map format without simulating them.

    I built this interface to allow easier manipulation of blocks and structures without fully loading and simulating the world.

  • Skiffc
    https://github.com/DonoA/Skiff

    Skiffc is a Java-based compiler for the Skiff programming language. Skiff is a reference-based Java-like programming language designed for compilation into C.

    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.

  • Cuckoo Prefix
    https://ieeexplore.ieee.org/document/9315074

    In this paper, we reported on our implementation of Cuckoo Prefix, a highly space-efficient data structure for storing and checking blocklists.

    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.

    DOI: 10.1109/ITNAC50341.2020.9315074

  • Silent Auction Site
    https://github.com/fairviewhs/silent-auction

    Silent Auction is a web app written in Node.js for the hosting of silent auctions and collecting donations. It uses MaterialUI for much of its styling and layout.

    I designed this application to run behind Nginx with Redis for session tracking and MySQL for state management.

  • Dallen.js
    https://dallen.io/

    A Next.js-based application I use to run my personal website. Provided custom interface for uploading files and managing content. Used Redis for session data, PostgreSQL for the state, sequelize for data access, React for the client-side rendering, and Redux for the client-side state management. This stack runs on an EC2 instance using Ubuntu server, Nginx, and ts-node. Cloudflare is leveraged for edge caching and DDOS blocking.

Skills

  • Languages

    Java, JavaScript, Python, Python 3, C, SQL, TypeScript, HTML, TypeScript 3, HTML5, Bash, C++, Perl, C#, CSS, GraphQL, XML
  • Other

    Back-end, AWS, AWS Cloud Development, Data Structures, Programming Languages, Compilers, Async/Await, Async.js, Multithreading, TCP/IP, Pipelines, CI/CD Pipelines, PostgreSQL 9.3, Ubuntu 16.04, Ubuntu Server, IP Networks, AWS DevOps, RPC, Cloudflare, SSL, SSL Certificates, Transport Layer Security (TLS), Apache Cassandra
  • Frameworks

    Spring 5, Express.js, Spring, Spring Boot, Redux, JUnit, .NET, PixiJS, MUI (Material UI), Ruby on Rails 5, Hibernate, Next.js
  • Libraries/APIs

    React, Node.js, Ts-node
  • Tools

    Jenkins, NGINX, AWS SDK, Shell, Terraform, Ansible, Amazon SQS, Mongoose, Sequelize, AWS Step Functions, Vault
  • Paradigms

    Compiler Design, Microservices, Continuous Integration (CI), HTML DOM, Continuous Delivery (CD), DevOps
  • Platforms

    Ubuntu, Amazon EC2 (Amazon Elastic Compute Cloud), Amazon Web Services (AWS), Docker, JVM, AWS Lambda, Windows Server, AWS Kinesis, Kubernetes, Buildkite, Google Cloud SDK
  • Storage

    Amazon S3 (AWS S3), MySQL, Redis, PostgreSQL, PostgreSQL 10.1, MongoDB, Amazon DynamoDB, XML-RPC, Cassandra, Aerospike, Google Cloud, Google Cloud Storage

Education

  • Bachelor's Degree in Computer Engineering
    2017 - 2021
    Santa Clara Univeristy - Santa Clara, CA, USA

To view more profiles

Join Toptal
Share it with others