- Experienced in back - end software development
- Knowledge of Agile/Scrum software development process
- Design and implement innovative solutions
- Experience with creating deployment systems
- Collaborate in a team using version control software
Operating Systems: Linux (Ubuntu/Debian), Windows, Android
Programming Languages: Python, Bash, Java, Ruby, C++, C
Technologies: Git, Subversion, Wireshark/tcpdump, ffmpeg, Apache, PostgreSQL, MySQL, REST
Confidential, Washington, DC
- Developed ETL pipelines from a variety of data sources to PostgreSQL
- Created a custom DevOps platform for managing and monitoring scheduled tasks collaboratively using Python and a PHP front-end
- Contributed to an internal Python library for managing ETL pipelines using Pandas
- Performed benchmarks to evaluate performance differences between PostgreSQL and Impala for time-series data
Confidential, Glen Burnie, MD
- Wrote application to gather motion analytics from streaming video using C++ and OpenCV. The service calculates the difference between two snapshots from a video stream in order to determine if the video is playing or is frozen/showing a solid color. This data is sent to an InfluxDB instance and the video streams could be set to viewable or unviewable based on a moving average.
- Created application to collect and graph video stream metadata using an application written in D and Python using Graphite.
- Architected database containing video metadata snapshots with MySQL and Python. This was used by a state agency to generate custom reports of traffic camera status.
- Created system for performing fresh installations of Linux systems remotely. This system is comprised of Bash scripts to generate a tarball containing Debian Linux with application code and a script to apply the tarball to a remote server, deleting the current operating system while preserving configuration.
- Developed software to detect video quality using neural networks using Python and the Caffe deep learning framework. The neural network determines video quality based on a streaming video snapshot, such as good quality, corrupted, or blurred. Actions such as email notifications could be executed based on the results of the analysis. This application was designed to run on a GPU compute instance in AWS.
- Maintained custom Debian Linux distribution for streaming media servers. Updated Debian packages to ensure security compliance. Wrote Bash script to generate an ISO image with latest application and OS code for on-site deployments.
- Performed load tests on potential new hardware configurations and wrote reports of the results.
Confidential, Annapolis Junction, MD
- Analyzed network traffic capture data using tcpdump.
- Conducted large dataset analysis using the distributed computing application Hadoop. Wrote map-reduce applications in Java to process the data.
- Developed an Android GPS location tracking application with website to display traversed paths. Android application generated a list of geographic coordinates in the KML format that could be displayed in a Google Maps based web application or Google Earth.
- Implemented an Android OS app that tracks live Twitter data. Given two search terms, the application would generate a live graph using data from the Twitter API.
- Configured and deployed a Hadoop cluster. Updated lab cluster to the latest version of Hadoop.