Marcus McCurdy, Developer in Philadelphia, PA, United States
Marcus is available for hire
Hire Marcus

Marcus McCurdy

Verified Expert  in Engineering

Python Developer

Location
Philadelphia, PA, United States
Toptal Member Since
December 22, 2014

Marcus has a bachelor's in computer engineering and a master's in computer science. He is a talented programmer and excels most at back-end development, but he is perfectly comfortable creating polished products as a full-stack developer as well.

Portfolio

50onRed
Ansible, Mercurial, Git, Java, jQuery, JavaScript, Amazon S3 (AWS S3)...
Swizly
RabbitMQ, Celery, Django
Drexel University
Multicast, PostgreSQL, Jenkins, Swing, Apache Maven, Java

Experience

Availability

Part-time

Preferred Environment

Vagrant, Git, Vim Text Editor, IntelliJ IDEA, OS X

The most amazing...

...thing I've coded is a multithreaded log aggregation platform that processes terabytes of data daily on a single machine.

Work Experience

Lead Software Engineer

2012 - PRESENT
50onRed
  • Updated an existing serial web scraping process to a parallel asynchronous process using Python's RQ library. Reduced processing time by 500%.
  • Provisioned, maintained, and utilized a 5 node Elasticsearch cluster being fed by LogStash.
  • Deployed StatsD to several web apps, providing key metrics and insight.
  • Used OpenResty and LUA to aggregate ping stats into Redis and flush the stats into MySQL. Reduced the delay in calculation of statistics from one hour to five minutes.
  • Created a Flask back-end for an automatic updating application processing millions of requests daily on only two servers.
  • Created Ansible playbooks for deploying web applications to EC2.
  • Designed MySQL partitioning and indexing schemes for tables with hundreds of millions of rows.
  • Created an AngularJS app to manage ad placements.
Technologies: Ansible, Mercurial, Git, Java, jQuery, JavaScript, Amazon S3 (AWS S3), Amazon EC2, MySQL, Redis, Laravel, PHP, Flask, Python

Software Engineer

2015 - 2015
Swizly
  • Monitored and analyzed RabbitMQ queue growth patterns in order to hunt down performance issues.
  • Inspected Celery events, workers, and tasks to discovery why workers would hang forever.
  • Scrutinized Python Celery job code to find locations in that could cause a job process to hang forever.
  • Update Celery job configuration to set hard timeouts on jobs that never finish.
  • Investigated why exceptions in Celery jobs were not being sent to the Sentry server.
Technologies: RabbitMQ, Celery, Django

Research Engineer

2009 - 2012
Drexel University
  • Created a Java Swing geospatial command and control application for US Army experiments.
  • Utilized multicast networking to create a distributed document sharing and editing platform.
  • Added continuous integration to the project by provisioning and deploying a Jenkins server.
  • Set up and utilized a Sonatype Nexus Maven repository server for our internal Maven repositories.
  • Built a custom graphics library of military symbols on top of NASA's WorldWind library.
Technologies: Multicast, PostgreSQL, Jenkins, Swing, Apache Maven, Java

Combat System Engineer

2007 - 2009
Naval Surface Warfare Center
  • Created test and evaluation plans for combat systems.
  • Was responsible for the installation and configuration of remote assistance systems on US Navy cruisers and destroyers. Saved time and money with the remote system by allowing shore-based experts to provide remote support to sailors both at sea and when docked. Resulted in a dramatic cost savings and decreased the turn around time for repairs.
  • Trained sailors in the usage of the remote support system.
  • Tested and repaired ship-based FDDI networks.
  • Worked directly with a System Test Officer (STO) to ensure minimal or no downtime while installing routers and software for remote support.
Technologies: Java, VNC, C++, SSH

Doge Pricer

https://github.com/volker48/dogepricer
An open source Chrome extension for tracking the price of Bitcoin and Dogecoin with ~400 active users. It allows users to create price rise/drop alerts and it also calculates the current dollar amount of users' BTC/DOGE.

Flask-mandrill

https://github.com/volker48/flask-mandrill
A Python Flask extension to facilitate sending emails through MailChimp's Mandrill API.

Itsdangerous

https://rubygems.org/gems/itsdangerousr
A port to Ruby for the Itsdangerous Python library.

Namegen

Namegen generates names based on bigrams. It was trained using the NLTK Names corpus. The application is not just randomly choosing names from a predefined list. The application is creating realistic names by using a Markov chain process.

C2k

https://github.com/volker48/c2k
Like Netcat, but for Amazon Kinesis. A command line application for getting data into and out of AWS Kinesis.

Machine Learning Foundations: A Case Study Approach

https://www.coursera.org/account/accomplishments/verify/HURTYF3Q79RV
Completed Coursera Machine Learning Foundations course.

Push It Real Good

https://github.com/volker48/pushitrealgood
I've been running a ton of machine learning experiments lately and I wanted something to notify me when my jobs done so I don't have to check my jupyter notebook constantly (or listen for my fans to stop spinning like my laptop is about to execute a vertical take off.

Kaggle Monsters Contest Code

https://github.com/volker48/monsters
Code in an iPython Notebook that was used for a Kaggle contest and also as examples for a talk I gave on beginner machine learning.

Languages

Python, C#, Go, Java, PHP, JavaScript, SQL, HTML, C++, Less, CSS, Bash Script, Bash

Frameworks

Flask, Swing, Django, Bootstrap, Laravel, Bootstrap 3, AngularJS

Other

Software Development, Ajax, Multiprocessing, Multithreading, Multicast, SSH, VNC, Relational Database Services (RDS)

Libraries/APIs

SQLAlchemy, Beautiful Soup, Python-rq, Scikit-learn, NumPy, Pandas, Facebook API, Mandrill API, jQuery

Tools

Vagrant, Ansible, Vim Text Editor, Git, IntelliJ IDEA, Celery, RabbitMQ, Amazon ElastiCache, AWS ELB, Amazon Virtual Private Cloud (VPC), NPM, Apache Maven, Mercurial, Bower, Gulp, Grunt, Zsh, Apache Ant, VirtualBox, Jenkins, NGINX, Java Concurrency, IPython Notebook

Paradigms

DevOps, Test-driven Development (TDD), Continuous Integration (CI), Agile Software Development, Concurrent Programming

Platforms

Amazon Web Services (AWS), MacOS, Amazon EC2, Linux, Windows, OS X, Docker, Ubuntu Linux, Mailgun, WordPress

Storage

Amazon S3 (AWS S3), MySQL, Redis, Redshift, Elasticsearch, PostgreSQL

2009 - 2012

Master's Degree in Computer Science

Drexel University - Pennsylvania, USA

2001 - 2007

Bachelor's Degree in Computer Engineering

California State University at Long Beach - California, 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