file_download
Personal photo

Brandon Barker

Software Developer
person_outline
Summary

I am a proud tinkerer, inventor, nerd, student, and full-time software developer. From prosthetic arms, and educational learning platforms, to eye exams, it has been my goal to innovate for the future and create projects that will change the world. Learning is important and can be fun, which is why every year I put myself through circumstances that I would not normally be in, pushing the boundaries of my knowledge.

Career Summary

Work Experience
comma.ai — Software Engineer Intern — San Francisco, CA
May 2018 — Aug 2018

Self-driving car kit developed by George Hotz; focusing on data to solve difficult problems. Designed a mapping engine capable of loading 5,000,000+ miles of data. Structured toolset to generate 3D Tiles, render the data within a browser context, and provide metadata when interacting with the mapping frontend.

Dokkio — Software Engineer Intern — San Francisco, CA
Jun 2017 — Jan 2018

Provides a better way to search your content, give it business context, organize it, work on it with others – to make content-focused teamwork more effective. Analysed 2000GBs of data, creating a recommendation system for categorizing files and folders. Using HTML5 implemented a document preview engine capable of loading documents with hundreds of pages.

Yurgosky Consulting — Software Engineer Intern — New York City, NY
Jun 2016 — Oct 2016

An analytics, strategy and technology development company focused on nonprofit, higher education, and social enterprise clients. Worked with clients like Teach For America and the Robinhood Foundation for SalesForce integrations.

Airphrame — Software Engineer Intern — San Francisco, CA
Jun 2015 — Oct 2015

An unmanned vehicle technology startup developing an aerial imaging and mapping service for commercial markets. Optimized daily operations by building a tool capable of doing data consolidation of 100+ gigabytes from the web platform with a custom live zip micro-service. Also built the mapping platform's aerial avoidance system and integrated video based capture, capable of recording 2+ hours of footage.

Cloudmine — Software Engineer Intern — Philadelphia, PA
Jun 2014 — Aug 2014

A HIPAA compliant data enablement platform for healthcare, empowering users to operationalize their most sensitive data. Worked on the Android API platform to ensure continuity and scalability. Created a CI system generating docker environments for easy automated staging and production testing.

Activities and Events
Computer Science Club — Vice President — West Chester University
Sep 2017 — Present

Organize club events to help enhance understanding of Computer Science topics while opening opportunities for internships. Currently perusing two new initiatives to help enhance the schools atmosphere: HackWCU, a hackathon in the Philadelphia area where students are free to explore their interests. Innovate, a makerspace open to all students with over 10,000$ of hardware.

Investment Club — Analyst — West Chester University
Sep 2017 — Present

Evaluated stocks to be purchased for the growth fund – worth over $20,000. Pitched stocks to be purchased for the fund; representing 50% growth since recommendation. Collaborating with current leadership to implement a more analytics-oriented approach for evaluating other funds and performance.

Mighty Moose Ice Hockey, Inc. — Head of Technology — Philadelphia, PA
Feb 2016 — Jan 2017

Volunteered to help a local non-profit with their website and technical needs. Migrated them to a different web platform and currently developing their website. Work with the non-profit for about three hours every week.

STEMHacks Hackathon — Founder and Head Organizer — STEM Academy
Jun 2014 — May 2017

One of a few high school hackathons in the Pennsylvania. The event strives to get high schoolers interested and involved in technology, having a influence of over 400+ students around the country! By providing a fun outlet for students to invent STEMHacks helped to create the future of innovators.

Out of the Box Robotics — Head Software Developer — Coatesville, PA
Sep 2011 — May 2017

A competitive team in the FIRST league winning up to the East Regional Competition. Develop utility applications to assist in the usage or construction of the robot. Mentored other teams in programming and software design. Wrote the software to control the autonomous and drive portion of the robot.

Awards
YCPHacks Hackathon — Best YCDS Hack — York, PA
Oct 2017

Developed a big data app capable of finding any person with minimal amount of information scraping through Facebook, Whitepages, and other websites. Ended up being awarded for the best in the category after the tool demonstrated it's flexibility to the judges.

FTC World Competition — Control Award — St. Louis, MO
Apr 2017

The control award is given to the team who has the best coding implementation along with consistent performance. Our team won for our implementation of a Kalman filter, PID drive, and integration of sensors in the control of our robot.

JPMorgan Chase & Co. — 1st Place — New York, NY
Oct 2015

Given a list of companies you must create an application to solve a problem that are current. Created an application to motivate underprivileged kids into working to get to college through the gamification of scholarships. Although the Team was proud of the product the app did not place.

HackBCA Hackathon — 2nd Place — Hackensack, NJ
Apr 2014

Competed with over 500 students to invent an application in the 24 hour deadline. Created iOculist, an app to test eyesight acuity and ended up winning second place. The event would then inspire STEMHacks after recognizing the potential of these genres of events.

Delaware Valley Science Convention — 2nd Place — Oaks, PA
Oct 2011

An invitation only competition for innovative science related projects. Developed a mind-controlled prosthetic arm. Won second place, received an award from the Navy, the Army, received an excellence in engineering award, and invited to Broadcom MASTERS.

Research & Articles

The future of navigation will be centralized around HD maps. While plenty of companies exist to provide this type of data, all are limited by paywalls and strict Terms-of-Service. A new map viewer, called “comma maps,” visualizes recorded paths driven, lane markings, and world features. Discussing the benefits of comma's approach to mapping, and the release of open source tool such as entium.

From games to complex traffic control systems, collision detection plays an important role in today’s modern computers. Currently there are two algorithms – Quad-Tree and Spatial Hashing – that are often used and at times it is based on personal preference. Spatial Hashing is a “bucket” based system where an objects relative area is increased and then inserted into surrounded buckets to be queried against. Quad-Trees are a recursive data structure that divide into quadrants as an object capacity is hit and a bounding box is identified for the selection of a quadrants.

Software Background

Languages
Java

Python

JavaScript / TypeScript

HTML / CSS / LESS

CoffeeScript

Bash

Processing

Visualforce

AppleScript

Lua

Scala

C++

Groovy

C#

Tools and Frameworks
WebGL
Cesium
Mapbox
Numpy
Node.JS
Gulp
Grunt
Makefile
ReactJS
JQuery
Spring
Google Web Toolkit
Maven
Gradle
SBT
SQL
Postgres
Netty
Jackson/Json
JDBI
Google App Engine
Amazon Web Services
Heroku
Django
Docker
web2py
Flask

Projects

3D Tile Converter for Cesium
Entiummore_vert

3D Tile Converter for Cesium

Entiumclose

Entwine is a data organization library for massive point clouds, designed to conquer datasets of hundreds of billions of points. Meanwhile, Cesium is a JavaScript library for creating 3D globes in a web browser. To bridge the gap between these two services, Entwine converts binary files into the 3D Tile format while supporting more Cesium-centric features. The tiles are optimized to reduce overhead in the browser through octree culling. Other functionality includes: data quantization, metadata instancing, and property association.
More Info

Cesium
Entwine
Material Design
Numpy
Map of Companies in Nuclear
Nuclear Visualizermore_vert

Map of Companies in Nuclear

Nuclear Visualizerclose

A map featuring over 1000+ companies working in the nuclear industry and their associated information – location, website, and short description. Built on Mapbox’s infrastructure and Github Pages static hosting, provides a simplistic visualization of the spread of data and their according categorization. All data is downloaded on the fly and uses minimal system resources.
More Info

Mapbox
Fuzzy Search
Former Students Seach Engine
YCDSMatchermore_vert

Former Students Seach Engine

YCDSMatcherclose

YCDS Matcher runs on facebooks graph api, whitepages and pipl. Each of the sources contribute their own parts of the data and act as forms of validation. Its works by scraping through multiple different online sources and building a genealogy to then track down a person who you lack their information.
More Info

Selenium
Material Design
pipl
Whitepages
Graph API
Friends Through Concerts
Vibezmore_vert

Friends Through Concerts

Vibezclose

Vibez was the result of a challenge in Outsidelands Hacks, build a way to connect people who attend the concert. Our idea was to connect people with people of similar taste so they could attend but also bond with friends. The app is built using AngularJS but depends on ionic for components, it also uses a NodeJS server for data retrieval.

AngularJS
ionic
NodeJS
Social Media
Simple and Available Web Proxy
Fancy Proxmore_vert

Simple and Available Web Proxy

Fancy Proxclose

FancyProx is an easy to deploy proxy utilizing Google App Engine as a host. FancyProx is a more optimized proxy in comparison to others because it caches websites as it goes allowing for quicker retrieval on a secondary visit. Furthermore, because it is on google app engine it allows for users to create their own personal proxy easily.
More Info

Google App Engine
Python
Proxy
WebApp2
Cache
Share school To MyHomework
MyTransfermore_vert

Share school To MyHomework

MyTransferclose

MyTransfer integrates Learning Systems, Schoology, Edmodo, and Blackboard, and the homework management system, MyHomework, together. MyTransfer reverse engineers the MyHomework system so that you do not need to worry about adding assignments anymore. Best of all it copies all relevant information like date, time, description and more!

Chrome Extension
Python
Web Scraping
Neural Network
Your School Schedule in a Convenient Place
STEM Classesmore_vert

Your School Schedule in a Convenient Place

STEM Classesclose

Deployed to over 800 students. This tool allows a user to view the amount of time remaining in a class period and the schedule format that corresponds with the day. This was a difficult project to make because it requires native code injection to enable notifications.
More Info

Native Code
Java
Injection
Reflection
Website Scraping
An Eye Test More Convenient than the Doctor
iOculistmore_vert

An Eye Test More Convenient than the Doctor

iOculistclose

A mobile application that tracks the distance between the user's eyes as he backs away from his phone. It uses Snellen's formulas and voice recognition to generate a highly accurate eye exam on your iOS or Android device. This test checks for visual acuity, color blindness, and astigmatism.
More Info

iOS
Android
Voice Recognition
Visual Recognition
Simplistic UI
Updates schoology to be more user friendly and intuitive!
Boostogymore_vert

Updates schoology to be more user friendly and intuitive!

Boostogyclose

Enhances Schoology with Tons of Features: Circle icons opposed to squares, Hiding classes, Rearrange classes, A stagnate sidebar and top bar, Infinite Scrolling, Removal of School Themes, Rename Classes, Popup Scroll Lock, Boostogy Settings, Quiz Highlighter and Tools, and Many minor tweaks.
More Info

Javascript
Web Scraping
CSS
HTML Templates
Chrome Extension
Advanced Collision Based Image Generation
Wordielmore_vert

Advanced Collision Based Image Generation

Wordielclose

Inspired by Wordle I attempted to make an Open Source version of API that would allow developers to easily generate word clouds. This was a fun project to make because it required an extensive math knowledge and pushed my technical ability to the next level implementing and learning algorithms to make my tool more efficient.
More Info

Java
Math 2D
QuadTree
Word Cloud
Spend Less Time Traveling and More Time Having Fun
Middle Meetsmore_vert

Spend Less Time Traveling and More Time Having Fun

Middle Meetsclose

Middle Meets is an Android application that relies on a Java RESTful server to provide it with its necessary map data. The application allows friends and acquaintances to easily meet at a center-point based off a list of locations. I enjoyed making this project because I saw a real need in the app market.
More Info

Android
Material Design
RESTful
Yelp
Google Places
Planning Hackathons In One Place
STEMHacks Adminmore_vert

Planning Hackathons In One Place

STEMHacks Adminclose

STEMHacks Admin is an elegantly coded dashboard the centralizes my teams functions. I created STEMHacks as a basic automatic emailer for our sponsors but the project slowly snowballed into an entire dashboard with user, chat, broadcasting, support with many other tools. STEMHacks encompasses a lot of languages and frameworks increasing its complexity while increasing the team's productivity.
More Info

Google App Engine
jQuery
Material Design
Bootstrap
RESTful
Score FTC Match and Analyse Match Data
FTC Scoutermore_vert

Score FTC Match and Analyse Match Data

FTC Scouterclose

FTC Scouter is a Material Design Android application focused in collecting match data and analyzing it. The data is serialized in JSON and then converted into a mySQL database where Tableau visualizes the data. This application was fun to build because it required support for a large squee of devices and required a lot of libraries to simulate the Material Design look.
More Info

Android
Material Design
Database Sync
Serialization
Seamless Audio Syncing Over the Web
Beatsyncmore_vert

Seamless Audio Syncing Over the Web

Beatsyncclose

After getting irritated when trying to listen to a song with my friend I decided to make BeatSync. BeatSync allows the user to create a playlist using their favorite streaming service and have the audio seamlessly synced between multiple devices. I enjoyed making this project because I ended up having to write my own web protocol that would allow the music to sync with no auditory difference.
More Info

NodeJS
Javascript
jQuery
Python
SoundCloud
Web Protocol
A Simple App To Tell Jokes
The Laughermore_vert

A Simple App To Tell Jokes

The Laugherclose

Comprised of a app engine host and an app, The Laugher, allows users to create and share jokes. This was a fun project to make not because of the sheer amount of funny jokes I saw, but the complexity of writing a bot that could scrape websites for jokes and classify them.
More Info

Android
Material Design
RESTful
Website Bot
Google App Engine
The Simplest Static Storage Available
Infinity Cachemore_vert

The Simplest Static Storage Available

Infinity Cacheclose

EasyCache is a simplistic yet well documented caching library focused towards Android in making the retrieval and serialization of objects for short term storage simplistic. Using a combination of annotations and a strong class structure EasyCache makes it efficient to quickly retrieve and store objects for later.
More Info

Cache
Serialization
SQL
Efficiency
Analyse Your Conversations through Natural Language Processing
Conversation Analysermore_vert

Analyse Your Conversations through Natural Language Processing

Conversation Analyserclose

Using Natural Language Processing and data management techniques FCE allows for a user to see the subjects brought up in a Facebook conversation and whether that conversation was a negative or positive experience. Using libraries such as D3 and NLTK the application makes it easy to display conversation metrics and information. I thoroughly enjoyed making this because it was something I hadn't experimented with before
More Info

Google App Engine
Python
Natural Language Processing
Node
D3
Quick And Simple Way To Take Screenshots
BitBar Screenshotmore_vert

Quick And Simple Way To Take Screenshots

BitBar Screenshotclose

Built ontop of BitBar, a simple dock framework, the tool allows for easy screenshots. The app utilizes AppleScript and shell to activate the machines screen capture tool and then redirects the image to where the user wants.
More Info

applescript
shell
bitbar
python
Advanced Dynamic Packaging System For On The Fly App Modification
Dynappmore_vert

Advanced Dynamic Packaging System For On The Fly App Modification

Dynappclose

Using maven and a custom installer android apps can on the fly load code. The maven plugin uses the Android compiler to convert Java applications into native Android applications and copies to code into the phone's directory. The phone then uses a dynamic loader to easily inject the code into the program.
More Info

Maven
Dynamic Loading
Android
Custom Compilier
Java
Neurally Controlling A Prostetic Arm Through EEG's
Mind Control Prosthetic Armmore_vert

Neurally Controlling A Prostetic Arm Through EEG's

Mind Control Prosthetic Armclose

Using the Emotive EPOC headset, a simple pattern recognition algorithm, and a Bluetooth interface a LEGO prosthetic arm can be controlled through thought. The headset takes in a raw EEG input then a program made in C using the emotive developer library correlates certain thought patterns to a calibrated action. The application then activates the Lego Mindstorms through a Bluetooth connection. Currently, the hand only has two groups of movable fingers and the thumb; however, in newer versions of the prosthetic more hydraulic arms could be added. The project was recognized by multiple fairs and has a broad range of applications.

EPOC
C++
EEG
Neural Input
Pattern Recognition
Bluetooth
Prosthetic