Robert Cope
Verified Expert in Engineering
Software Developer
Mead, CO, United States
Toptal member since October 7, 2022
Robert is a senior software engineer with a decade of experience designing databases and APIs, architecting scalable back-end solutions, and providing support and maintenance for software throughout its entire lifecycle. Robert specializes in Python and Scala, is skilled with PostgreSQL, MySQL, and SQlite3 databases, and can quickly pick up projects and codebases, contribute effectively, and provide leadership when necessary.
Portfolio
Experience
- Python - 10 years
- Bash - 10 years
- Linux - 10 years
- SQL - 10 years
- Database Design - 7 years
- Scala - 5 years
- Bottle.py - 5 years
- PostgreSQL - 4 years
Availability
Preferred Environment
Linux, Debian, PyCharm, IRC, Slack
The most amazing...
...application I've developed and designed is a large-scale distributed test runner, programming language, test track, and build tool.
Work Experience
Data Engineer
Computational Physics
- Created, implemented, and maintained the data pipeline for several magnetometer sensor networks. Using Python, these pulled measurements from field devices over MQTT and stored the results in a TimescaleDB PostgreSQL database.
- Designed, implemented, and maintained the tooling for loading code and debugging remote magnetometers over OpenVPN and wrote several tools for automatic management of our OpenVPN deployments and certificate authority infrastructure.
- Maintained operations on featured at least three nines, 99.9% uptime, for all magnetometer services.
- Devised, implemented, and maintained a bottle.py webserver to allow end users to retrieve magnetometer measurements and status over the web. The API used an OpenAPI 2.0 (Swagger) schema, with JWT and API key support.
- Designed and maintained the PostgreSQL databases used for magnetometer measurements, managed operations, and tuned the databases.
- Maintained the AWS deployments for all of our services, specifically utilizing EC2, S3, and Simple Notification Service (SNS).
- Built, implemented, and maintained a general-purpose distributed job runner for several internal physics models and simulations, using PostgreSQL, Swagger, Python, and bottle.py, allowing users to upload, execute, and chain models.
Platform Software Engineer
NetApp
- Devised and implemented the transaction layer for a novel network management codebase using Python and SQLite, enabling custom two-phase commit behavior across systems for manual and timed rollbacks of network configuration.
- Implemented Ansible roles and playbooks to automate the SDS product deployment in customer environments.
- Designed and implemented the installation and management codebase for NetApp's software-defined storage product, using Python and Bash tooling to manage Docker in customer deployments and build RPM packages.
Software Engineer
SolidFire (acquired by NetApp)
- Implemented, maintained, and designed a bespoke visual programming language implemented in Scala, which featured a web front-end. This application allowed other developers to build tests and run builds for the Solidfire product.
- Handled operations and maintained four nine's availability for the above tool while in this role.
- Designed, implemented, and maintained a foreign function interface layer for the language, allowing developers to write and use Python functions and run them across many data centers.
- Created, implemented, and maintained Linux native isolation for the foreign function interface tool using cgroups, namespaces, and eventually LXC. The tool consistently ran thousands of concurrent Python instances safely on single systems.
- Designed, implemented, and maintained a Python hardware resource management and job coordination tool using Flask and the Connexion web framework, tracking tens of thousands of resources, and successfully scheduling access for many tools.
- Developed and implemented deployment tools using Fabric and Ansible, enabling single push-button blue-green deployments with rollback capabilities.
- Administered, designed, and tuned several Percona MySQL databases for the bespoke programming language system above. By the end of my role, these databases contained at least 6TB of production data, each with excellent performance.
- Designed, administered, and tuned a PostgreSQL database for the resource management system described above.
- Developed several other internal tools using bottle.py, Swagger APIs, and PostgreSQL to support other developers, including build tracking and API based alerting.
Firmware Engineer
Seagate
- Designed, implemented, and maintained the distributed test runner and reporting tool for Seagate's Kinetic network drive program. The system was implemented in Python with Erlang, C++, Java, and Python harnesses.
- Administered several self-hosted applications for test developers and other technical staff, including Redshift, Phabricator, and an IRC daemon.
- Designed and implemented an automated system and web application for code quality checks for SATA drive tests. The system used Python, Flask, and C, performed correctness checks, and linted code, sending regular email reports to test developers.
Experience
Almost Home Resources App
https://ahra-beta.copesystems.com/Education
Coursework Toward PhD in Physics
Cornell University - Ithaca, NY, USA
Bachelor's Degree in Physics
Colorado State University - Fort Collins, CO, USA
Certifications
Nonlinear Dynamics: Mathematical and Computational Approaches
Sante Fe Institute
Functional Programming Principles in Scala
Coursera
Modeling Risk and Realities
Coursera
Fundamentals of Quantitative Modeling
Coursera
Skills
Libraries/APIs
Bottle.py, OpenAPI, SQLAlchemy, jQuery, Handlebars, Node.js, Fabric, JSON-RPC
Tools
PyCharm, OpenVPN, Pytest, MQTT, NGINX, Ansible, Munin, Connexion
Languages
Python, Scala, Bash, C, Java, Erlang, C++, SQL, x64 Assembly, Embedded C, PHP, JavaScript
Frameworks
Swagger, Flask, Mithril.js, Bulma, Finagle
Paradigms
Database Design
Platforms
Linux, Amazon Web Services (AWS), Docker, Google Cloud Platform (GCP), Amazon EC2, Kubernetes
Storage
PostgreSQL, SQLite, MySQL
Other
Instrumentation, TimescaleDB, Physics, RPM Packaging, Data Structures, Algorithms, Cloud Computing, Numerical Programming, Wireless Systems, IEEE 802.11, Operating Systems, Nonlinear Dynamics, Numerical Methods, Numerical Modeling, LXC, Programming Language Design, Distributed Systems, Numerical Analysis, Quantitative Modeling
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring