Versatile and creative software engineer experienced in development of embedded systems, build tools, and simulators, combining strong analytic and problem-solving skills with competence in written and verbal communication and demonstrated ability to drive products through the full life cycle, from conception through delivery and maintenance.
Proficient in achieving understanding of processor microarchitecture to create effective build tools and simulation support for the processor.
Specialties: Embedded software development,
embedded development tools,software process development,
Processor Architecture,
Object Oriented design,
Problem-solving, Defect analysis, and trouble-shooting
Skills:
Programming Languages
C, C++ , C#
Python, Perl, SQL, TCL, shell
Several DSP and microcontroller Assembly languages.
Operating Systems
Microsoft Windows, LINUX, UNIX, Solaris.
RTOS: VxWorks, uClinux, VDK
Tools and Technologies
Development and debug environments: Microsoft Visual Studio, Eclipse, gdb, Green Hills Multi.
Tool Chains: Microsoft, gnu, ADI
Libraries and frameworks: .Net, STL, Boost, MFC, COM, pyxb, PyUnit
multi-threading in Windows and linux, using semaphores, mutexes, critical sections; interprocess communication using RPC, sockets, pipes;
Parser and doc generators: Bison, flex, Yacc/gyacc, antlr, dlg, Yacc++, Doxygen
Memory debug and code analysis: Purify, Quantify, valgrind, Boundschecker, gprof, lint, PC-Lint, Pylint.
Source Control Systems: SVN, Git, CVS, Clearcase, Perforce.
Defect tracking/issue management: Soffront Track, Seapine TestTrack, Bugzilla, Redmine
Regulatory compliance: IEC 62304; 21 CFR Part 820; ISO 14971, ISO 13485, DO-178
Lab: in-circuit emulator, protocol analyzer, oscilloscope, DMM.
Principal Software Engineer @ * Delivered to schedule complete and tested software enhancements and fixes to an unfamiliar C++ embedded system constituting a Class III medical device.
* Promoted adoption of Good Test Practices in Verification & Validation by building close working relationships with V&V staff. Earned praise from V&V staff for applying valuable insight and perspective to their tool and product validation efforts.
* Accurately confirmed traceability of system requirements to C source code for an aviation instrument project by quickly achieving understanding of the specifications, design and completed code.
* Enabled initial product development of a web application by developing python code and unit tests to prototype a server that will process input data sets from XML. From 2012 to 2015 (3 years) Burlington, MAContract Software Engineer @ Extended and debugged Design Verification Environment to support verification of new processor functionality and improve longevity and maintainability of the environment.
Created software development plans and specifications for enhancements to a complex embedded system in a military aerospace application. From 2012 to 2012 (less than a year) Consultant @ Software Engineering Consultant
Implemented and debugged assembler support for a new variable-instruction length variant of a 16 bit DSP, working in a MDML, (a machine description language), Perl, and C++.
Integrated a new simulator into the product by implementing wrappers to translate from the established broad COM API to the simulator’s simple parameterized interface. From March 2010 to May 2011 (1 year 3 months) Dedham, MAStaff Software Engineer @ Managed the complete product lifecycle for code generation and simulation tools: developing feature proposals and design specifications, producing and reviewing technical documentation, identifying and clarifying project dependencies, developing and tracking schedules, supervising and mentoring junior engineers, specifying, implementing, testing and documenting features, enhancements, and corrections for defects; analyzing and formulating responses for issues presented by customers about the shipping product.
• Designed, developed, and maintained assembler and simulator tools implemented in C++, and supporting documentation for SHARC DSPs. Integrated support for each new family:
o Delivered simulator and code generation tool support for the next generation processor incorporating variable length instruction execution, on-chip algorithm accelerators and additional instructions.
o Extended the instruction pipeline of the cycle-accurate simulator from three to five stages to support new chip designs within a single binary supporting both pipelines.
o Increased simulator cycle accuracy and fidelity to the chip design specifications, addressing numerous long-outstanding defects.
o Improved maintainability and extensibility through better modularity and encapsulation.
• Led the team porting the code generation tools for a family of 16-bit DSPs from an ad hoc, proprietary, incompletely documented binary format to ELF, reducing maintenance cost and enabling feature consistency across product lines.
• Designed and implemented critical enhancements to the software development tools for a family of 16-bit DSPs, reducing customer’s effort to develop and debug systems, thereby facilitating further design wins.
• Collaborated with the applications group and directly with a major customer to specify, implement, and validate new features in largely undocumented code across the tool chain. From 1996 to 2010 (14 years) Norwood, MASenior Software Engineer, Component Test Systems Division @ Designed and developed software in C and C++ for a test system for high-performance mixed signal devices, comprised of an OpenWindows host and VxWorks target in a client/server architecture using Remote Procedure Calls.
• Improved the coverage and robustness of the internal development environment, contributing to the design and implementation of build and release management scripts and documentation.
• Expanded the potential market for the test system by defining and implementing software interfaces to laser trim and wafer probe systems, collaborating closely with customers and vendors. From 1992 to 1996 (4 years) North Wilmington MA and North Reading, MASenior Software Engineer @ GTE sold off IPC From 1987 to 1992 (5 years) Stamford, CTSoftware Engineer @ GTE bought Contel... From 1990 to 1991 (1 year) Stamford, CTSoftware Engineer @ Principal engineer for station interface software and firmware engineering of high density key systems.
• Designed, developed, and debugged object-oriented software and data schema for real-time platform running under VxWorks on a SPARC processor in a digital telephone switch: produced detailed strategy and design documentation, subject to colleagues’ rigorous review. Implemented the design in C and Objective C, used embedded SQL for data population.
• Developed the embedded firmware for the new generation of the company’s flagship high density key telephone system. Formulated the design, implemented it in Z-80 assembly language; tested and debugged the system using in-circuit emulation. From 1987 to 1990 (3 years) NY,NY and Stamford,CTTest Engineer @ From 1985 to 1987 (2 years)
Bachelor of Science (B.S.), Electrical Engineering @ Rensselaer Polytechnic Institute From 1981 to 1985 Scott Snow is skilled in: Embedded Systems, Debugging, C, Perl, Embedded Software, Python, C++, Software Development, Firmware, Digital Signal..., Object Oriented Design, Processors, Troubleshooting, RTOS, Software Engineering, TCL, XML, Windows, Testing, Algorithms, Semiconductors, Software Design, Embedded Linux, Unix, Programming, Shell Scripting, Microcontrollers, Visual Studio, Device Drivers, Linux, Operating Systems, System Architecture, SQL, Architecture, C#, .NET, Mixed Signal, Hardware Architecture, Simulations, Microprocessors, VxWorks, Problem Solving, Real Time, IEC 62304, DO-178B, FDA Design Control..., IEC 60601, ISO 13485, 21 CFR Part 820 Quality..., SDLC