Proficient with all aspects of software development life cycle, from requirement analysis to design, code, unit test, integration and system test. Extensive experience working with hardware engineers and prototyping new systems. Proven track record of solving complex hardware and software problems.