Samuel Rohrer, Developer in Washington, DC, United States
Samuel is available for hire
Hire Samuel

Samuel Rohrer

Verified Expert  in Engineering

Software Developer

Location
Washington, DC, United States
Toptal Member Since
June 11, 2019

Samuel has over five years of experience designing and implementing software solutions that leverage available hardware and accelerators. He prefers to work on complex projects that require distributed systems and machine learning expertise. Some highlights of his work include RESTful API and stateful logic design, synthetic data generation, convolutional neural networks for object classification, Hadoop and Spark for big data processing, and high-performance data processors.

Portfolio

MITRE
Spring, Java, Pandas, Python 3, Eclipse IDE, Build Systems, Docker, PyTorch...
Rapid7
Spring, Java, Docker, Eclipse IDE, Build Systems, Version Control Systems...

Experience

Availability

Part-time

Preferred Environment

Build Systems, C++, Java, Cloud Environments, Julia, Python 3, Eclipse IDE, Spacemacs, Visual Studio Code (VS Code)

The most amazing...

...Toptal project I've completed is a Python chatbot for Meta Workplace using webhooks that searched Atlassian Confluence.

Work Experience

Senior Machine Learning Engineer

2020 - PRESENT
MITRE
  • Managed a team of five people developing a system that automatically generates hazardous autonomous driving scenarios with descriptive metadata. Evaluated options for data generation, predictive models, and system orchestration. Presented findings.
  • Parallelized evaluation of reinforcement learning algorithms to accelerate analysis of performance. Modified simulation framework to accommodate new scenarios.
  • Constructed a multi-class object classifier for synthetic-aperture radar imagery using a convolutional neural network and benchmarking tools to evaluate performance using PyTorch.
  • Built public key infrastructure user authentication using an Apache HTTP server container. Implemented user authentication and role-based authorization for GUI using a Python decorator.
  • Designed and implemented generic order-matching software using Java and Spring Framework that could simulate markets using the NetLogo programming language.
  • Constructed data loaders to sync a Hadoop-distributed filesystem with a Linux filesystem and PySpark functions for academic paper processing and analysis.
  • Built a GUI to control and analyze the results of the signal processing system. Containerized the system using Docker into front and back-end services. Used Python for back-end process control.
Technologies: Spring, Java, Pandas, Python 3, Eclipse IDE, Build Systems, Docker, PyTorch, Version Control Systems, Cloud Environments, PKI, Research, Hadoop, Spark, Programming Languages, Microsoft Office, Machine Learning, Reinforcement Learning, Deep Learning, Convolutional Neural Networks (CNN)

Software Engineer II

2019 - 2020
Rapid7
  • Implemented cross-index object matching, filtering, and sorting to allow more advanced queries of distributed NoSQL document search framework using Java and Spring Framework.
  • Responded to customer-reported defects with fixes for vulnerability management software products.
  • Developed elements of the hybrid cloud insight platform to be more performant using microservices, generic design patterns, Spring Framework, Spark, and Elastic MapReduce.
  • Upgraded the existing codebase to interface with the new version of Elasticsearch.
Technologies: Spring, Java, Docker, Eclipse IDE, Build Systems, Version Control Systems, Agile Project Management, Databases

Quantitative Software Developer

2018 - 2019
Cubist Systematic Strategies
  • Engineered an options trader that queried multiple banks for the price of an options contract and then could execute a trade for it. The design focused on the mechanics of queries, parsing, and message passing.
  • Built high-performance market data parsers using C++ and Linux parallelization.
  • Interfaced real-time market data vendor Java API and SQL database using Java.
  • Implemented upload of historical market data sources to the database using Python and Bash.
Technologies: Java, C++

FPGA Engineer Intern

2016 - 2017
Uber
  • Developed FPGA design to test cameras during manufacturing that integrated with GeniCam interface.
  • Investigated the usefulness of the Vivado High-Level Synthesis C++ tool versus SystemVerilog.
  • Interned during the Summer of 2016 and Summer of 2017 as a FPGA engineer.
Technologies: C++, SystemVerilog, Design for Manufacture & Assembly (DFMA), FPGA

Containerized Full-Stack Machine Learning App

A Flask web interface for a movie recommendation system built on IMDB data running in a Docker container. Created the unit test framework using Python that runs automatically in a CI pipeline. All methods are implemented inside a custom Python package to demonstrate interfaces and code encapsulation.

Python Confluence Chatbot for Meta Workplace

Developed a chatbot that can be used from the Facebook Workplace to interact with a Confluence knowledge base. This was a project for ServiceRocket, a Toptal client. The chatbot could handle various queries and maintain a logical conversation flow.

Sound Recognition on Embedded Device

An embedded app that runs on ARM Cortex-M4 to compute the mel-frequency cepstrum coefficients for collected audio samples. Built the app to run on a larger energy harvesting base device and used the algorithm to determine the source of the sounds being collected.

Languages

Python 3, C++, Java, Julia, C, Embedded C, SystemVerilog

Libraries/APIs

Pandas, PyTorch

Storage

Databases, Cloud Environments

Tools

Eclipse IDE, MATLAB

Other

Build Systems, Version Control Systems, APIs, Webhooks, Embedded Systems, FPGA, Computer Engineering, Probability Theory, Control Systems, Operating Systems, Computer Architecture, Computer Vision, Signals, Signal Processing, Digital Signal Processing, Matrix Algebra, PKI, Research, Programming Languages, Design for Manufacture & Assembly (DFMA), Microsoft Office, Machine Learning, Reinforcement Learning, Deep Learning, Convolutional Neural Networks (CNN)

Frameworks

Spring, Hadoop, Spark

Paradigms

Concurrent Programming, Agile Project Management

Platforms

Docker, Visual Studio Code (VS Code)

2014 - 2017

Bachelor of Science (BSc) Degree in Computer Engineering

University of Michigan - Ann Arbor, MI, USA

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring