PDF Format





Objective

To obtain a challenging, mid-level position as a Computer Engineer utilizing my experience in software engineering. 


Education

Columbia University, New York, NY
M.S., Computer Engineering
December 2007
GPA: 4.11

Rensselaer Polytechnic Institute, Troy, NY
B.S., Dual Degree in Electrical Engineering and Computer Systems Engineering
May 2004
GPA: 4.0

Skills

Systems:  Linux (Red Hat Enterprise Linux/debian), Mac OS X, Windows 2000/XP/Vista
Languages:  C, C++, Python, Bash, Perl, HTML, css, VHDL, MIPS Assembly (familiar with PHP, Java, Verilog, Maple)
Environments:  Autotools, Xcode, Visual Studio
Databases:  PostgreSQL, mySQL
Programs: Django, CherryPy, Emacs, Vim, Subversion, CVS, trac, Microsoft Visual SourceSafe/Word/PowerPoint/Excel, Adobe Photoshop, Altera, Xilinx, Spice, espresso
Administrative Applications:  Apache, Bind, ssh, vsftpd
Laboratory Tools:  Wireshark, Oscilloscope, Logic Analyzer, Spectrum Analyzer

Work Experience

Software Engineer – Mobile Video Product Development
January 2008 - Present
KenCast, Inc., Stamford, CT
  • Key member in development effort to secure UDP traffic over the internet using the ciphertext stealing method.  Responsible for software architecture design, implementation, and test.  Written in C++.
  • Lead developer for Mac OS X platform.  Ported Windows based product to Mac OS X.  Design included new network interface control using Berkley Packet Filters to send raw link-layer packets.  Written in C++. 
  • Completely redesigned Graphical User Interface for existing product.  Incorporated customer feedback to design a seamless and user-friendly interface.  Written in JavaScript and custom scripting language. 
  • Researched and determined optimal Linux kernel settings for RAID device.  Created automated testing system with Python scripts to find solution as quickly as possible. 
  • Demonstrated ability to contribute quickly by creating LCD screen controller within first month of employment.  Written in C.
  • Wrote wrapper program around RRDtool.  Allowed history of server statistics to be easily analyzed.  Designed to be easily extendable.  Written in Python.
  • Worked to improve software development process. Suggested creating the first company bug tracking system.  Setup and administered Trac Project.  Created guidelines for standard practices and trained engineering staff on usage.  Automated backups for system.
  • Prototyped first company product which used the Software as a Service (SAAS) model.  Setup web server for users to send live video, where it was transcoded and published as Adobe Flash. 
  • Suggested an in-house operations database application to allow inventory and returns to be tracked.  After management approval, developed web-based program in Python utilizing CherryPY, PostgreSQL, and Psycopg2. 
  • Took responsibility to be liaison between sales and engineering groups.  Setup web interface to allow product requirements and deadlines to be set by sales group and translated into engineering tasks.  Demonstrated leadership by setting goals for development group.  Held development meetings to increase communication of group. 
  • Created and presented multiple demonstrations to showcase new products both at customer facilities and at various tradeshows, including NAB and Satellite.  Collaborated with existing clients to gather and shape requirements.
Software Engineer, Contractor
August 2006 - April 2008
RealtyGenerator, Warwick, NY
  • Improved system to automatically update over 1.5 million real estate listings.  Significantly decreased system runtime, improved database queries, added error checking and handling, automated several tasks, improved system stability, and fixed various bugs.  Developed with Python scripts using the Twisted network framework.
  • Created automated chat robot that interacts with users through a messaging client and sends various information regarding real estate.  Implemented by using a chat state-machine that allows the robot’s response to be easily extended and modified.  Code was written in AIML and Python. 
  • Managed team of software engineers during creation of real estate listing updater scripts for over forty cities. 
Graduate Research Assistant
June 2007 - January 2008
Columbia University, Professor Steven Nowick, New York, NY
  • Proposed unique way to optimize asynchronous circuits by reducing latency of critical paths.  Implemented idea as command line tool written in Python.  Tool read state-machine specifications and produced optimized hardware descriptions in Verilog HDL.  Tool also included many features that increased efficiency of circuit design.
Software Engineer, Associate Member Technical Staff
June 2004 - July 2006
ITT Industries, Avionics, Clifton, NJ
  • Designed RS-422 interface in assembly.  Developed scripts to simulate RS-422 traffic to test interface.  Initial project upon employment and completed ahead of schedule.  Received ITT Excellence Award for work on project for an “accomplishment of a significant business or technical objective, above and beyond the employee's normal duties, characterized by creativity, professionalism, and outstanding effort.”
  • Developed and thoroughly tested new radar search algorithm.  Written entirely in assembly.  New math routines were created to reduce runtime by over 50 percent.
  • Led a team of engineers during the entire software development lifecycle, from requirements generating to customer sell-off testing.  Project included design of a new touch screen GUI and creation of scripts to automate testing.  Signed off by customer on schedule.    Written in OO Pascal, C++, and an in-house scripting language. 
  • Improved efficiency of group by creating Perl script to automatically generate a Microsoft Word document of interprocessor messages by parsing assembly source code.  Document was previously created manually.
Assistant Engineer
March 2003 - May 2004
Bioinstco Corp., Troy, NY
  • Team lead in project to research, design, and test glucose sensor unit.
  • Supervised testing of patients using patented biotech instrument.  Used patient feedback to improve user interface. 


School Projects

Embedded Control, Spring 2007
  • Worked with a team of engineers to create a digital picture frame using an Altera FPGA.  System automatically displayed images read from an SD card.  Designed hardware using VHDL, including controllers for SRAM memory, VGA display, and the software interface.  Also assisted with software testing and debugging to ensure project deadlines were met.
Distributed Embedded Systems, Spring 2007
Computer-Aided Design of Digital Systems, Spring 2007
  • Developed a command line tool that efficiently scheduled operations to hardware units under specified timing constraints or resource limitations.  All coding was done in C++.
Operating Systems, Fall 2006
  • Modified the Linux 2.6.17.13 kernel to add features such as a new process scheduling algorithm, a different file permission algorithm, and a new kernel firewa
Advanced Logic Design, Fall 2006
  • Utilizing Register Transfer Level (RTL) design flow, created a mathematical acceleration unit to compute the nth Fibonacci number in less than n/2 time.
Advanced Computer Hardware Design, Spring 2004
  • Worked with a small group of students to design a 12-bit general purpose processor on an Altera FPGA.  Processor was able to maintain two states and allowed contexts switches by software or hardware interrupts.  Thirty-six instructions were created which included multiple memory address, branch, and stack operations. 


Honors

Eta Kappa Nu Honor Society
Tau Beta Pi Honor Society
Phi Theta Kappa Honor Society
RPI Medal
RPI Harold N. Trevett Award