C. Dylan Shearer
Python Developer in West Sacramento, CA, United States
Member since March 2, 2018
Dylan has been a software engineer for about nine years, and has worked for both large companies and small Silicon Valley startups. He has a master's degree in computer security, as well as broad, full-stack experience, ranging from writing performance-critical components in C to designing and implementing customer-facing UIs in Angular. He is also the lead developer for a successful open-source project written in Go.
Software Engineer2014 - PRESENTNiara / Aruba Networks
- Played key role in designing, and sole role in developing (using C/C++ and the OpenSSL library), a system for components to securely authenticate and communicate with each other.
- Implemented (in C) a firewall-like module that allows users to define rules to be applied to high-volume input data; for performance, developed heuristics to remove redundancies in rules before applying them; used PVS (a theorem-proving system) to prove that these heuristics would not alter the behavior of the rules.
- Designed and implemented (in Python) a daemon that periodically checks for error conditions on the system and raises alarms. It includes a framework whereby other engineers can easily define new checks.
- Proposed, designed, and implemented (in Go and React) an internal Web app (running in Docker) that enables managers to see the automated-testing status of latest builds of supported versions of the product.
- Designed and implemented (in C++) a daemon that dynamically modifies Nginx config files, prevents those with unsatisfied dependencies (e.g., missing certificates) from being loaded, and restarts Nginx as needed. This greatly improved the stability of our product's startup process.
Computer Scientist2011 - 2013US Army
Software Engineer2007 - 2009American Greetings
- Enhanced and maintained J2EE Web apps that depend on a variety of other systems, including mainframe filesystems, MS Access databases, and batch scripts.
- Greatly increased the reliability of an application that stored data on multiple unreliable systems by creating an ad-hoc transaction facility that ensured data were consistent even after a failure.
- Made a module that monitored messages exchanged between a critical Web application and a card-sorting machine and raised alerts when the machine did not respond in time to requests from the application.
- Generalized an application's user-authentication code to make it work with a new single-sign-on system as well as a legacy LDAP directory.
- Enhanced a Web application so that sales representatives could submit their work hours online.
- Wrote a guide to using the version-control system in accordance with new configuration-management policies.
- Jobber (Development)https://dshearer.github.io/jobber/
Jobber is a utility for Unix-like systems that can run arbitrary commands, or "jobs", according to a schedule. It is meant to be a better alternative to the classic Unix utility cron.
ParadigmsREST, Automated Testing, Testing, Test Automation, Functional Programming
FrameworksRobot Framework, AngularJS
Libraries/APIsReact, Node.js, jQuery
ToolsGit, Make, Makefile
OtherSystem Programming, Security, Computer Security
StorageMemcached, MySQL, PostgreSQL
- Master's degree in Computer Science with an emphasis on security2009 - 2011Naval Postgraduate School - Monterey, CA
- Bachelor of Science degree in Computer Science2002 - 2007Kent State University - Kent, OH