Experienced software developer with good hardware knowledge. Experience writing software at the firmware, system, and application levels. Able to plan and architect large software frameworks.
Strengths in system architecture, network programming, and concurrency / multithreading. Comfortable working alone or as part of a team. Follows "clean code" practices. Enjoys mentoring and pair programming.