Scroll To View More
Marcus McCurdy

Marcus McCurdy

Philadelphia, PA, United States
Member since November 10, 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. However, he is comfortable creating polished products as a full stack developer.
Marcus is now available for hire
  • 50onRed
    Python, Flask, PHP, Laravel, Redis, MySQL, EC2, S3, RDS, JavaScript, jQuery...
  • Swizly
    Django, Rabbit MQ, Celery
  • Drexel University
    Java, Maven, Java Swing, NASA World Wind, Jenkins, PostgreSQL, Multicast
  • Java, 10 years
  • SQL, 10 years
  • JavaScript, 5 years
  • Flask, 5 years
  • Python, 5 years
  • Ansible, 2 years
  • PHP, 2 years
  • MySQL, 2 years
Philadelphia, PA, United States
Preferred Environment
OS X, IntelliJ, Vim, Git, Vagrant
The most amazing...
...thing I've coded is a multithreaded log aggregation platform that processes terabytes of data daily on a single machine.
  • Lead Software Engineer
    2012 - PRESENT
    • 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: Python, Flask, PHP, Laravel, Redis, MySQL, EC2, S3, RDS, JavaScript, jQuery, Java, Git, Mercurial, Ansible
  • Software Engineer
    2015 - 2015
    • 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: Django, Rabbit MQ, Celery
  • Research Engineer
    Drexel University
    2009 - 2012
    • 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: Java, Maven, Java Swing, NASA World Wind, Jenkins, PostgreSQL, Multicast
  • Combat System Engineer
    Naval Surface Warfare Center
    2007 - 2009
    • 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: SSH, C++, VNC, Java
  • Doge Pricer (Development)

    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 (Development)

    A Python Flask extension to facilitate sending emails through MailChimp's Mandrill API.

  • Itsdangerous (Development)

    A port to Ruby for the Itsdangerous Python library.

  • Namegen (Development)

    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 (Development)

    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 (Other amazing things)

    Completed Coursera Machine Learning Foundations course.

  • Push It Real Good (Development)

    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 (Development)

    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.

  • Python Multithreading Tutorial: Concurrency and Parallelism (Publication)
    Threading is just one of the many ways concurrent programs can be built. In this article, we will take a look at threading and a couple of other strategies in building concurrent programs in Python, as well as discuss how each is suitable in different scenarios.
  • Languages
    Python, SQL, PHP, Go, JavaScript, HTML, Java, CSS, Bash Script, Bash, Less
  • Frameworks
    Flask, Laravel, Bootstrap, Bootstrap 3, AngularJS
  • Libraries/APIs
    SQLAlchemy, Beautiful Soup, Python-rq, Facebook API, Mandrill API, jQuery, Scikit-learn, NumPy, Pandas
  • Tools
    IntelliJ IDEA, Vagrant, Ansible, Vim Text Editor, Git, Zsh, VirtualBox, Jenkins, Nginx, Java Concurrency, IPython Notebook, NPM, AWS ElastiCache, AWS ELB, Amazon VPC, Maven, Ant, Mercurial, Bower, Gulp.js, Grunt
  • Paradigms
    DevOps, Test-driven Development (TDD), Concurrent Programming, Continuous Integration (CI), Agile Software Development
  • Platforms
    Amazon Web Services (AWS), AWS EC2, Linux, Windows, Mac OS, Mailgun, WordPress, Docker, Ubuntu Linux
  • Storage
    AWS S3, MySQL, Redis, AWS Redshift, AWS RDS, RDS, PostgreSQL
  • Misc
    AJAX, Multiprocessing, Multithreading, Elasticsearch
  • Master's degree in Computer Science
    Drexel University - Pennsylvania, USA
    2009 - 2012
  • Bachelor's degree in Computer Engineering
    California State University at Long Beach - California, USA
    2001 - 2007
I really like this profile
Share it with others