Ben Sima's Resume
Hi! I'm a software engineer currently located in Ohio.
By trade, I work on applications that deal with a lot of data; by vocation I study mathematics and philosophy. I have experience in application architecture, databases, and other data-heavy systems.
Email: ben@bsima.me
Skills
Languages
- Clojure
- Common Lisp
- Haskell
- Java
- JavaScript
- Python
- Ruby
- Scheme
- TypeScript
Technologies
- Angular
- Apache HBase
- Apache Kafka
- CQRS
- Debian
- Docker
- Git
- Jenkins CI
- MacOS
- MySQL
- NixOS
- Numpy
- Pandas
- PostgreSQL
- REST
- Rails
- Tensorflow
- Ubuntu
- Yesod
Employment
Groq.com, Staff Software Engineer, Infrastructure
2019 - Now
Groq is a hardware company that makes fast chips for advanced ML workflows. On a team of ~8, I manage their infrastructure: internal services, documentation, build tooling, third-party dependencies, CI/CD, a bit of DevOps, lots of testing. I also work on the release process: packaging our Python API and related software into debs and rpms and testing the artifacts with SQA. During crunch time I've also worked on their Pytorch-like ML library in Python. Technology used: Nix, Haskell, Python, bash, Docker, many others.
UE Authority, Senior Software Engineer
2018 - 2019
UE.co provides car- and home-insurance sales leads to a country-wide network of salespeople. I was responsible for developing a few data pipelines for use in their next-gen platform. The service would fetch leads from external providers or accept a CSV upload of lead data, scrub the data through half-a-dozen internal services, and deliver the end result to a front-end application which allowed the salesperson to save the list of leads for later. My services were written in Haskell and designed to be highly concurrent, handling something like 60k-70k leads per minute. The bottlenecks ended up being the insert operation into Amazon Redshift, and the third-party APIs.
Technology used:
- AWS infrastructure
- Haskell data pipeline backend
- MySQL and AWS Redshift
- RESTful API with Swagger docs
Software Engineer, Liaison Technologies
2015 - 2018
I co-designed and implemented a distributed, streaming, immutable, event-sourced cloud database for semi-structured enterprise data, plus a few AI-based microservices for extracting structured intel out of the semi-structured streams of data in our database. The business goal is to flexibly extract intelligible data from customers' data banks. Everything was done in Clojure, on a private cloud infrastructure with Docker containers as deployable microservices.
Technology used:
- Clojure and Java
- PostgreSQL, ElasticSearch, ArangoDB
- Apache Kafka, Apache HBase
- REST API with Swagger integration
- event sourcing, command query responsibility segregation (CQRS)
- schema matching
Software Engineer, Thermo Fisher
2017
I wrote services and UIs for creating and running hardware tests on all of Thermo Fisher's equipment. The application allowed field technicians to collaborate on custom diagnostic tests for each instrument, connect to any instrument on the network, run tests remotely or on-site, etc. The end product is deployed as a Docker container onto mostly Windows machines used by Thermo Fisher technicians.
Technology used:
- Typescript & AngularJS UI
- Python backend
- CouchDB datastore
Software Engineer, WholeLatteLove.com
2015
As a full-stack developer, I was responsible for the DevOps workflow on AWS and legacy servers, setting up and doing deployments, diagnosing and fixing bugs, managing a git workflow between in-office and remote developers, and coding new features on both the frontend and backend.
- Designed/implemented app-wide notification system.
- Moved a legacy Ruby on Rails app from a small, unreliable data center to AWS, with continuous integration, testing, & deployment.
- Updated a large Rails ecommerce engine we depend on (Spree) which required implementing a dozen custom extensions.
- Developed a data generator to easily replicate our production environment in staging.
- Created a suite of simulation tests for our legacy order processing systems using the Clojure framework Simulant.
Lead Developer, Nebula Bio
2014 - 2016
With a biomedical engineer partner, I developed an open source, low cost, portable blood analysis platform. Our goal was to be the “Arduino of biotech.” All development was done on GitHub. Unfortunately the project was cut short because protein reagents are expensive and I was a broke college student.
- Designed a POSIX-compatible driver for a custom potentiostat.
- Created a custom crowdfunding webapp with a REST API in Clojure, deployed on Heroku.
- Created a GUI in Python for the driver, and beginning beta testing with crowdfunders/customers.
- Lead and handle all project management and financial aspects of the project.
Instructor, Thinkful
2014 - 2015
Taught data science and full-stack web development with Python to new and intermediate students. I also helped develop their curriculum by writing tutorials and exercises for each of the courses I taught.
Nebula Sports
2012 - 2013
An RIT-sponsored startup project that lasted for about a year, in which we developed novel headgear padding for athletes. My main role was in guiding the scientific research, while solely managing the fundraising (grants and private investment). In a 4-person team, we developed an algorithm for optimizing our custom padding to a specific position within a specific sport. Patent concerns made us shut down this part of the project. We then prototyped and programmed an accelerometer to be housed inside a helmet and signal to the athlete the severity of an impact. Reebok released their CheckLight product before we finished developing, and so scooped the market. All algorithm programming was done in Matlab.
Freelance Developer
2012 - 2014
As a freelance developer, I created two ecommerce systems in PHP, a ClojureScript front-end website to be used as a landing page, and worked on an e-magazine site for a local Rochester magazine.
Involvement
Meetup presentations
- A Categorical Theory of Patches. May 3, 2018, Papers We Love San Diego
- Getting Started with Yesod. April 10, 2018, Haskell Hangout
- Intro to Easy Deployments with NixOps. March 21, 2018, San Diego DevOps Group
Education
A.B., Philosophy, Rochester Institute of Technology, 2014. Thesis: Wonder and Desire in Romantic Love: Levinas and Irigaray