Derek M. Frank cherry picking with ds

Derek M Frank

Software Engineer

Location
Chatsworth, CA (Greater Los Angeles Area)

Summary

Detail-oriented software engineer lead with experience in analysis, design, development, testing, and implementation of microservice architectures. While I do have a full-stack background, my focus is in distributed systems and data engineering.

At a more personal level, I am passionate of my work, excited about technology, always looking to take initiative, and hold myself to high standards.

My outside interests include: raising my dogs, lifting weights, reading, playing guitar, snowboarding, and learning new things.

Skills

Languages

Expert/Advanced
Python
Javascript (Vanilla)
Proficient
C
C++
Java
Common Lisp
SQL
Bash
Zsh
Prior experience
Haskell
Prolog
Scheme
OCaml
Perl
Lua

Libraries/Frameworks

Expert/Advanced
Pytest
Falcon
Flask
BottlePy
Django
Dramatiq
JQuery
Proficient
Apache Beam
redis-py
PyMongo
uMongo
Selenium
PhantomJS

Technologies

Expert/Advanced
GCP
Git
Docker
Kubernetes
HTML5
CSS3
JSON
XML
REST
Proficient
AWS
Helm
Apache Beam
Redis
PostgresQL
MySQL
SQLite
MongoDB
ArangoDB
Gunicorn
Nginx
Apache

Operating Systems

Expert/Advanced
Linux
macOS
BSD/Unix
Android
Proficient
iOS
Windows

Portfolio

News Slackbot

derekmfrank.com/newsbot

A Slackbot that fetches news articles and delivers them to any number of Slack channels that the bot is subscribed to. Currently only Twitter is used to fetch articles, but the bot was designed to allow new clients to be plugged in easily.

  • Python 3.6
  • Docker
  • Slack RTM API

Personal Website

derekmfrank.com

Incorporated CDN, Cloudflare, to reduce load, improve response times, and freely serve over HTTPS. Chose complimentary color palette. Creatively styled call-to-actions so as not to conflict with color palette and chosen font weights.

  • Jekyll
  • HTML5
  • CSS3
  • SASS
  • Markdown
  • GitHub Pages
  • Cloudflare

Link Crawler

A crawler to count links of a specific type. The goal was to be able to determine how many PDFs were hosted on a given domain.

  • Python 2.7
  • Scrapy

Old Personal Website

First personal website deployed with a shared virtual server.

  • Python 2.6
  • Django 1.5
  • SQLite 3
  • Apache 2
  • DreamHost

Experience

Software Engineer Lead

FanAI

Pioneered the microservices architecture that powers the product API and data ETL.

Designed, implemented, and deployed the Twitter followers data ETL in Google Kubernetes Engine.

Improved distributed systems stability and scalability by replacing big data services with Google products such as RabbitMQ with Pub/Sub, MongoDB with Big Query, etc.

Reduced ETL costs by replacing Apache Beam/Dataflow with microservice-based ETL pipelines.

Worked with Distributed Actor Framework, Dramatiq (like Celery), to asynchronously process jobs communicated over a message broker.

  • GCP
  • Kubernetes
  • Helm
  • Docker
  • Docker Compose
  • Python 3.7
  • Pytest
  • Falcon
  • Dramatiq
  • Apache Beam
  • Redis
  • ArangoDB
  • MongoDB
  • RabbitMQ
  • Git
  • Linux

Programmer

Star Labs LTD - Readz

Add features and fix bugs for both front-end and back-end of the product. This includes, but is not limited to: Shopify integration, custom copy/paste of elements, analytics tracking via Google-defined sessions.

Full ownership of internal build server used by QA, which behaved like a continuous integration server.

Full ownership of Akamai integration and automation to sync Readz and client domains via Akamai's Property Manager API.

Responsible for full releases of new software on AWS via ELB, EC2, RDS, and S3.

Improved pre-release bug detection of customer content by building an application with PhantomJS2 to compare production content with the current development version. This reduced QA time spent verifying hundreds of customer websites every sprint (i.e., two weeks).

  • Python 2.7
  • Django 1.8
  • Javascript
  • HTML5
  • CSS3
  • MySQL
  • Apache 2
  • Git
  • AWS
  • Akamai
  • BottlePy
  • SQLite 3
  • PhantomJS
  • Bash
  • Linux

Embedded Systems Test Engineer

Medtronic MiniMed

Designed, developed, validated, and documented iOS test automation framework and API in Javascript, Python, and Qt4.

Designed, developed, tested, and validated tools using Python to automate testing and interacting with Diabetes-related embedded devices.

Analyzed requirements, designed test cases, created and debugged automated test scripts, and documented work per Medical Standard IEC62304.

Wrote intended use validation test plans based on product requirements, executed validation tests, and documented results to ensure product meets intended use.

  • Python 2.7
  • Javascript

Education

Bachelor of Science Degree, Computer Science

University of California, Santa Cruz

Acquired the following skills and experiences:

  1. Demonstrate mastery of computer science in the following core knowledge areas:
    • Algorithms, data structures, and complexity
    • Programming languages
    • Software engineering and development
    • Computer systems
  2. Apply system-level perspective by thinking at multiple levels of detail and abstraction and by recognizing the context in which a computer system may function, including its interactions with people and the physical world.
  3. Apply problem-solving skills and the knowledge of computer science to solve real problems.
  4. Understand how technological advances impact society and the social, legal, ethical and cultural ramifications of computer technology and their usage.
  5. Write about and orally communicate technical material about computer science and computer systems, broadly conceived.
Relevant Courses
Artificial Intelligence
Operating Systems
Fundamentals of Compiler Design
Advanced Programming
Computer Networks
Computational Models
Computer Architecture
Computational Methods
Dynamical Systems
Comparative Programming Languages