I am looking for a full-time Software Engineering job that would allow me to stay in the Portland, Oregon area. I am open to remote work if there would be no more than one week of travel every two months.
I prefer to develop on a Linux desktop with either Emacs or Eclipse. I excel in integration tasks, system-wide debugging, or any task that requires knowing many technologies. I have been doing generalist work for years that has required me to be responsible for managing the server to writing a backend to implementing the UI.
- Java - 10+ years experience going back to my college days of being a teaching assistant for a Java course to recent RESTful API development using the non-blocking webservers.
- Python - 5 years experience, including recent projects using Pyramid, Django, & Flask.
- C/C++ - Low level development of device drivers and device connectivity libraries.
- PHP - Facebook application development and maintenance.
- Objective C & C# - UIs for OSX and Windows respectively.
- Saltstack - Custom formulas, reactor eventing, master & masterless, and full server deployment configurations for production and development.
- Puppet - Basic development environment configuration for vagrant VMs.
- PostgreSQL, Redis, Cassandra, Mongodb - Development and operational experience across a variety of use-cases.
- MySQL - Development experience as well as experience managing a redundant production environment.
- Kafka, RabbitMQ, ZeroMQ - For different projects that needed messaging.
- Websockets - Realtime websites backed by Java(vertx) or Python(gevent).
Independent Consultant and Developer (4 Years)
I worked for a handful of companies over the years and in some cases produced entire products. In other cases I enhanced and maintained large infrastructures to help companies meet performance needs as well as cost efficiency.
- Developed APIs and backends for mobile application developers in Java and Python.
- Full website implementations for custom web applications.
- Managed large, multi-server infrastructures. Reduced costs by restructuring to more efficient configurations and in some cases rewriting the software to be more efficient.
- Developed a consumer application in OSX and Windows that would update the firmware on a USB device.
- Reworked the development workflow of multiple organizations to use configuration management for deployment with a variety of software requirements.
Senior Software Engineer - hi5 Networks (1 Year+)
Senior Software Engineer - Glu Games (3 Years)
Technical Consultant - EPIUSE America (3.5 Years)
Originally I did development work for EPI-USE while I was getting my master's degree in Computer Science. This development focused on J2EE and specifically the JBoss application server. After I graduated, I became a technical consultant mostly developing customized applications for SAP based systems. I developed on SAP's Java web application server and SAP's ABAP based backend systems.
Intern for the iPAQ Engineering Team - Compaq (2 Summers)
My duties included the basic testing and debugging of source code, driver development, debugging tool creation, troubleshooting engineering/design issues, and research into ubiquitous computing issues. Most of my development was done in Embedded Visual C++.
Teaching Assistant - Georgia Institute of Technology (3.5 Years)
I TAed for two classes. CS1322 - Object Oriented Programming and CS2130 - Languages and Translation. CS1322 is taught in Java and CS2130 is taught in C. As well as my responsibilities that required teaching and giving feedback, I did significant course development. My duties required the development of instant feedback mechanisms that allowed students to submit their code online and get a report of the problems with their code.
Georgia Tech - Masters in Computer Science
- Intelligent Systems
- Programming Languages
Georgia Tech - Bachelors in Computer Science
- Major: Systems
- Minor: Intelligent Systems, Thoery