Principal Software Engineer Resume
SUMMARY:
Background with Embedded Processors has provided experience in all aspects of project development including: design, software development, debugging, component selection, integration, documentation, software maintenance, version control, and project management.
TECHNICAL EXPERTISE:
Languages: C, C++, Python, java, Assembly, Basic, HTML. (Windows and Linux environments)
Platforms/ Processors: Linux, Windows, TI TMS320xx DSPs, Analog Devices 20xx series DSPs, Motorola 68xxx, Intel 8088 - 80386 and a host of 8-bit processors.
RTOS: VxWorks, pSOS, DSP/BIOS, and Home grown systems.
Development Tools: Emulators from White Mountain, TI, Orion, Applied Microsystems, Analog Devices, and Nohau. Debuggers; Microsoft Eclipse, and QT Creator. CM tools; CVS, PVCS, ClearCase and SVN, Agile development environment.
Test Equipment: Logic analyzers, Network/Protocol analyzers, Oscilloscopes, Multimeters, T1 snoopers, Spectrum analyzers, Oscillators and specialized test equipment.
Protocols: IP, TCP, UDP, ATM, HDLC, PPP, V42, V42bis, X.25, VOIP, T1/E1, ISDN
EXPERIENCE:
Confidential
Principal Software Engineer
Responsibilities:
- Evaluation and testing of T1/E1 hardware, Modem hardware, and Server platform.
- Modify kernel modules for optimized operation and port from older kernel versions.
- Add features for PCI compliance.
- Develop test scripts and tools, with python, java, and shell scripts to aid in the development and testing on Linux applications.
- Developed a web interface to control the operation of a configuration file validation application.
Environment: Linux/Linux kernel, C, Java, Python, T1/E1, ISDN, X.25, HDLC/LAPB, GDB, Eclipse, CVS, shell scripts, Web interface.
Confidential
Principal Software Engineer
Responsibilities:
- Designed/developed drivers to extract sensor data from various sensors over USB and serial port interfaces.
- Designed/developed code to collect and synchronize data from multiple inputs (comport drivers, UDP, TCP) and forward the consolidated information (UDP) for further processing.
- Developed interface via GNU Radio tools, to display RF signals in various formats (FFT, waterfall FFT and time domain).
Environment: Linux, Windows, C/C++, Python, shell scripts, TCP, UDP, RS232, USB, SVN, QT Creator
Confidential
Principal Software Engineer
Responsibilities:
- Designed/developed code to upgrade firmware in multiple racks of DSL modems simultaneously.
- Reduced code of rack controller by 50 percent, allowing more features and extending the life of the controller.
- Managed overseas development team.
- Designed and developed DSP code to control the flow of video via a mobile video recording system.
Environment: Linux, Windows, C/C++, Assembly, DSPbios, pSos, HTML, Java, TCP, UDP, T1, RS232, CVS
Confidential
Principal Software Engineer
Responsibilities:
- Designed/developed algorithm to speed-up validation and reduce the space required for the SHA database.
- Ported code across several platforms; (MVS, IMS, VAX, Windows, and UNIX/LINUX) systems.
- Provided technical advice to other engineers to resolve unique and stubborn problems.
Environment: Unix, Linux, Windows, MVS, VAX, IMS, C/C++, HTML, Java, TCP, UDP, RS232, CVS
Confidential
Principal Software Engineer
Responsibilities:
- Designed/developed an improved algorithm for coherent demodulation of FSK signals.
- Designed/developed code to discriminate voice and data in captured phone signals.
- Designed/implemented interrupt handler to overcome constraints in the TI DSP PCI interface.
- Designed/developed inter-processor scheme over PCI that handles several channels of bi-directional data flow.
- Implemented an enhanced algorithm to synchronize a local receiver to a network clock reference.
- Designed/developed algorithm to route multiple channels of data through multiple DSPs
Environment: Linux, Windows, C/C++, DSPbios, Assembly, TCP, UDP, RS232, CVS, Clear Case
Confidential
Principal Software Engineer
Responsibilities:
- Designed/developed Network Impairment simulator for simulating delay, out of order packets, missing packets, jitter and duplicate packets.
- Developed version s of V42bis and HDLC, optimized for TMS320C54X DSP.
- Developed and taught class on network structures and protocols.
Environment: Linux, Windows, C/C++, DSPbios, Assembly, Shell scripts, TCP/UDP, VOIP, RS232, X.25, VOIP, CVS
Confidential
Senior Project Leader
Responsibilities:
- Software/firmware version control.
- Computer network operation and upkeep.
- Software/firmware maintenance and Equipment evaluation.
Environment: Windows, C, Assembly, ISDN, RS232, X.25, PSTN/POTS
Confidential
Senior Project Leader
Responsibilities:
- Designed run length encoded algorithm for detecting and discriminating various telephone related tones such as dialtone, busy, ringback, etc.
- Designed script language to control dialing, test measurements, time stamping, tone detection, tone generation, interacting with operators and responders, recording and playback.
- Designed state driven operating system for TI TMS32OC31 DSP to handle simultaneous execution of scripts, voice files, recording, detecting tones, generating wave forms, dialing and time stamping.
Environment: Windows, C, Assembly TCP, RS232, CVS, PSTN/POTS