Alan Porter
611 Park York Lane, Cary NC 27519
porter611@kr4jb.net
(919) 386-9188
------------------------------------------------------------------------
[SUMMARY]
Embedded software engineer and mobile applications developer. Linux
desktop user since 1992. Pioneer in embedded Linux, also familiar with
RTOS's. Published iPhone application developer. Expert level C and C++,
comfortable with Python and Perl. Familiar with Web 2.0 (PHP,
Javascript, CSS). Interest in security and common-sense usability. Team
player or individual contributor. Articulate, explains complex ideas
well. International experience.
NOTE - jobs are not listed in chronological order.
------------------------------------------------------------------------
[EXPERIENCE - MOBILE AND EMBEDDED SOFTWARE]
TMIO, Research Triangle Park NC
Software Engineer, Embedded Linux System Designer
February 2004 to October 2006
+ START-UP COMPANY
First employee at software development office in RTP. Active in
product planning and technology evaluation. System administrator
duties included network planning, DHCP, DNS, internet domains, VPN,
internal email, source code control (subversion), printers, automated
backups.
+ EMBEDDED LINUX SYSTEM
Created a custom Linux distribution to run on a single-board computer
with limited resources. Selected open source packages and organized
them them into a repeatable build process. Wrote device drivers for
custom hardware. Provided run-time platform for other developers.
+ C++ APPLIANCE CONTROL SOFTWARE
Wrote custom software in C++ to control an "Intelligent" oven
appliance. Interfaced with several open source libraries (log4c++,
Xerces XML, SQLite). Developed XML protocol that client applications
use to control the oven.
+ SECURITY ANALYSIS
Evaluated the security of the product design, both for the oven in
the home and for the back-end servers.
Ericsson, Research Triangle Park NC
Embedded Software Engineer
March 1998 to March 2003
+ CELLULAR PHONE SOFTWARE
Wrote embedded software (in C, assembly) for mainstream cellular
phone products. Added support for camera accessory and high speed
data services to CDMA phones (Sprint, Verizon). Wrote device drivers
and protocol software for a GSM-based FM radio phone, shown at
CeBit-99. Developed over-the-air instant messaging protocol for a
concept phone for teenagers.
+ ERICSSON CYBERLAB SINGAPORE (16 MONTHS)
Built prototype gadgets to visualize and test 3G application concepts
and home network services. Test results led to changes in mainstream
product designs. Team leader for the prototyping group (three
engineers). Created a phone simulator to test application flow in
user trials.
+ SPECIAL ASSIGNMENT IN SWEDEN (2 MONTHS)
Served as liaison between development groups in the US and in Sweden.
Chosen for my ability to comprehend and explain wide technical
problems. Directed 3rd-party contractors in implementation of "push"
feature for WAP mini-browser.
+ PROFESSIONAL TRAINING
Completed technical courses on Embedded Linux, Speech Recognition and
Digital Signal Processing. Attended Leadership Core Curriculum
management training.
Chickway Systems, High Point NC
Senior Software Engineer
May 1994 to October 1996
+ CTS-6000 TOUCH SCREEN
Project leader and primary developer for CTS-6000 industrial weighing
and labeling station. Developed long-term project goals and managed
(sometimes conflicting) requirements. Designed user interface for
industrial usability. Wrote entire embedded software package in C++,
including a cooperative multi-tasking scheduler, a TCP/IP network
interface, and a reliable data storage system.
+ UNIX-BASED INVENTORY MANAGEMENT SYSTEM
Led the design of Computerway bar-code scanning system. Wrote
inventory management software that is used in a warehouse
environment. Developed custom software for wireless handheld bar-code
scanners. Created database tables using the Sculptor data modeling
tools.
+ CUSTOMER INTERACTION
Installed and supported CTS-6000 touch screens in working poultry
processing plants. Supported sales team on pre-sales plant visits.
------------------------------------------------------------------------
[EXPERIENCE - UNIX SERVER SOFTWARE]
Tekelec, Research Triangle Park NC
Software Engineer
October 2006 to present
+ ENTERPRISE LINUX DISTRIBUTION
Supported and made enhancements to Tekelec's RHEL-based Enterprise
Linux distribution. Added new capabilities to internal build tools.
Supported high-availability features for telecom-grade usage.
+ WEB APPLICATION DEVELOPMENT
Wrote PHP and Javascript code to launch and monitor system software
upgrades. Worked with Zend framework and Dojo UI widgets. Contributed
to Linux-based high-availability cluster that is used for nation-wide
cellular call routing (HLR).
+ SECURITY ANALYSIS
Hardened Tekelec's platform software for approval by US Military
(DISA).
A4 Health Systems, Cary NC
Graduate Student / Software Engineer
October 1996 to December 1997
+ UNIX BACK-END SERVER PROCESSES
Re-engineered unix server processes for enVista Document Manager
product. Increased system reliability, automated the installation
process and cut maintenance costs. Instituted a version control
system for back-end programs, scripts and data files. Used Oracle and
Sybase SQL.
+ FORMAL AND INFORMAL TRAINING
Taught in-house classes on unix and client-server technology.
Performed customer-site installations and training.
General Electric, Charlottesville VA
Software Engineering Contractor
January 1993 to May 1994
+ UNIX/PLC COMMUNICATION PROTOCOLS
Designed and implemented an ethernet communication bridge between a
unix workstation and GE Fanuc's Programmable Logic Controllers.
Nortel, Research Triangle Park NC
Software Engineer
August 1991 to January 1993
+ UNIX TOOLS
Developed unix-based version control and software development tools
for the Network Services Division.
+ SPECIAL ASSIGNMENT IN MAIDENHEAD, ENGLAND (6 MONTHS)
Performed sanity tests and feature tests on international telephone
gateway switch.
------------------------------------------------------------------------
[EDUCATION]
North Carolina State University, Raleigh NC
Master of Computer Science
January 1997 to December 2000
- Courses of interest: Real Time Systems, Network Security, Wireless
Communication, Human Computer Interaction.
- December 2000: Master of Computer Science degree.
- May 1991: Bachelors degree in Mechanical Engineering, Computer
Science Minor.
------------------------------------------------------------------------
[ACTIVITIES AND INTERESTS]
- Active member of the Triangle Linux User's Group. Steering Committee
member in 2008, Chair in 2009.
- Active member and occasional speaker for the IEEE Embedded Systems
interest group.
- Elected 2004 president of the Triangle Amateur Robotics club.
Organizer and presenter. Volunteer judge for First Lego League.
- Published an iPhone app called "Tipster", available through Apple
iTunes.
- Wrote a Real Time Operating System (RTOS) called "Presto" for
Motorola 68HC11 and Atmel AVR.
- Publication: "Multitasking on the Cheap", Dr Dobb's Journal, February
2004. A simple way to implement multiple program threads by using a
cooperative scheduler.
- Attended security conferences: CarolinaCon (Chapel Hill) and Hack In
The Box (Kuala Lumpur).
- Two years' study of Mandarin Chinese language.
- Amateur radio operator. Extra class license, callsign KR4JB.
- Private pilot (September 2006). Member of the Wings of Carolina
flying club.
------------------------------------------------------------------------
http://AlanPorter.com/resume
updated 24 February 2010
|