BMC Primary

Craig D. Woodward

196 Saint Patrick Dr.
Rochester, NY 14623
+1 (585) 764-1926
F i t
A challenging and high-paced workflow is preferred, as is a socially relaxed environment with technically competent peers.  Flexible work hours and a casual dress code are highly preferred.
E x e r i e n c e
REDCOM Laboratories  Fairport, NY (12/17 – Present )
Sr. Software Engineer
Worked with system team to create features for, and augment capabilities of, a full service telephony system stack. Added and repaired feature functionality for XMPP, SIP, DHCP, TFTP, TLS, and several other network-based sub-systems within the platform. Did extensive changes to EJabberd (in Erlang), including integrating inter-process communication with base system via existing mechanisms using Google protocol buffers. Implemented a universal handler for Push Notification services, and tied into each sub-system where applicable. Extensive use of and augmentation of C++ template systems, including STL, Boost, and GPB, primarily in a *nix based system model. Worked with Swift and Android developers to get cross-functional components working smoothly.
Pictometry / EagleView Technologies.  Henrietta, NY (10/05 – 7/17)
Sr. Software Engineer
Worked on capture solutions and other real time performance tools for both in-house and remote customer use. Created and maintain several tools for automated setup, calibration, and focus training & testing of camera systems. Enhanced and maintain real time software suite used for aerial photography, including hardware automation, self-correcting / fault tolerant systems, navigation and tracking system integration, and various other features.  Worked on and maintain on several projects and development tools in both Windows and Linux environments, including active use of C, C++, MFC, Boost, and PHP.  Worked alone and in groups, currently using SCRUM based methodologies and Atlassian toolsets in a team of ten.  Grew with company from a single engineering group of eleven to nearly a dozen groups ranging in size from three to ten each.
Next Gen. Solutions, LLC.   Rochester, NY  (9/99 – 9/05)
Sr. Systems Programmer/Consultant  
C o n t r a c t
Xerox (CSBU/OSG)   Webster, NY (3/04 – 9/05)
Enhanced and maintained libraries using SNMP across several dozen DocuCenter line multipurpose copiers.  Coordinated with central Xerox SNMP group to maintain and add central features for use by third party customers.  Validated and documented compatibility of deliverable products and libraries across minor and major version releases.  
RESCUECOM   Fairport, NY  (8/03 – 5/04)
PC Analyst / Technician / Software& Report Generations
Did in-office and in-home repairs, PC trouble shooting, networking, system installations and more.  On-call position included direct customer contact, working in customer facilities and network operation centers, billing, collections, and follow-up.  Created or customized several scripts for clients using Linux based systems for automation.  Created custom billing systems, interfacing with customer databases (in Access, FoxPro and ODBC formats) with output via C programs and/or Crystal Reports plugins.
Next Gen. Solutions, LLC.   Rochester, NY  (9/99 – 9/05)
Sr. Systems Programmer/Consultant
C o n t r a c t
Kodak (CI-WW-OSD/PSG)  Rochester, NY (1/01 – 6/02)
Worked on Kodak I§Lab professional scanning and electronic fulfillment system. Created DCOM based database server with automated updates via internet.  Expanded in-house DCOM objects to enable existing legacy products with custom features ( & Photo Services).  Added and/or enhanced scanner input and CD output capabilities for HR200 and PV300 systems. Designed and implemented a fault-tolerant, multi-peer, DCOM based model to provide seamless connectivity, resource sharing, and distributed output processing in a KPCD production system.  Created several tools to assist in remote debugging and resource emulation.


Rochester Institute of Technology   Rochester, NY
Degree: Bachelors of Science in Computer Science Minor: Computer Engineering Tech.  
Concentrations: Embedded systems / OS independent application development.
Windows Unix / Alt Os
  • MS Visual C/C++ 1.52c through 2017
  • SDK / DDK developer (16 & 32 & 64 bit)
  • Win16/32, MFC, ATL, STL, Boost, .Net
  • Driver development (primarily in print/scan/USB)
  • Wise, WIX, InstallShield, Various Installers.
  • Linux kernel, C/C++, STL, Erlang
  • Sccs, Vss, Rcs, ClearCase, Svn, Git
  • Apache server module coding
  • CGI, Javascript, PHP, Yii, various frameworks.
Firmware Imaging Formats
  • MC68000 series micros
  • MC680X/68HC11 micros
  • HPGL-3, PCL5e, PJL, PS2/3
  • PDF, EMF, DIB, TIFF, etc.

Software samples available on the web at:


Addendum A (Work experience prior to 1996)


Next Gen. Solutions, LLC.   Rochester, NY  (9/99 – 9/05)
Sr. Systems Programmer/Consultant
C o n t r a c t
Kodak (CI-WW-OSD/PSG)  Rochester, NY (4/00 – 1/01)
Consulted and created key systems to provide DFE functionality to an existing legacy system via the Harlequin RIP system.  Inherited and provided maintenance and support for PictureVision scanner and electronic fulfillment systems.  Responsibilities included support and updates for software, hardware and/or firmware.  Designed and retrofitted custom export modules to allow product to interface with current in house and 3rd party on-line picture storage systems.  
Xerox (CSBU/OSG)   Henrietta, NY (8/99 – 4/00)
Enhanced, maintained and created printer drivers for DocuCenter Color Series 50 printers on Windows 9x, NT and 2000.  Created custom driver solutions using PScript, Adobe, UniDriver and MiniDriver technologies for each platform.  Extended and enhanced existing drivers with unique settings and custom graphics for all above driver technologies (including UniDriver).  
ENTIRE, Inc.   Victor, NY  (11/97 – 9/99)
Sr. Systems Programmer/Team Leader/Engineer
Created and maintained Win32 (95 & NT) applications for use with current and legacy systems. Enhanced dynamic distributed print system.  Created and incorporated new drivers into existing system, extending system to use over six new printer types. Created, implemented, and enforced build procedures and source control systems to meet SEI Level 3 specifications. Created PCL 5e raster converters, drivers, image compression routines, and printer simulators.  Traveled, representing the company at customer sites and promoted systems at several trade shows.  (Xplor, Comdex, etc.)  
ASCOM TIMEPLEX   Woodcliff  Lake , NJ / NYC area (6/97 – 11/97)
Sr. Systems Programmer/Team Leader/Engineer
Contract: Timeplex manufactures telecommunications equipment (TDM Switches, Frame Relay Switches, Routers, etc).  Our team jointly worked on specification, design, code interface, and production of an ISDN/EISDN plugin module for and existing PBX/Data cross-over system.  My position focused primarily on hardware design, driver coding, and low-end routing systems.
Interim Technology   Rochester, NY  (9/96 - 6/97)
Jr. Systems Programmer/Contract
C o n t r a c t
Xerox (SDSP/ODP)   Perinton, NY
Created and enhanced software used with 5750, 5790, 5760 and 5765 digital copier lines.  Jointly designed and implemented a number of unique color solutions in using C and C++. (1 Pat. Approved, 2 Pats. Pending).  Implemented remote scanning capability for above models. Ported and created tools for image format conversion and correction.  Enhanced build procedures to meet SEI Level 3 specifications.  Provided integration and code management services to project team.  
Northern Telecom/CCI   Rochester, NY  (9/94 - 3/95)
Multi-media/NAV Base programmer
Enhanced real-time performance of RPC-M protocol. Developed in C and C++, ported system between platforms.  Code currently used in multi-point failure and fault-tolerant telecom systems.
Fangz Server System  Rochester, NY (8/96-12/98)
System Administrator, Unix Operations
Independently created, ran and maintained, a secured Linux system and integrated with an ISP provider to supply user-shell access.  Wrote custom low-maintenance and self-correcting programs.  
Rochester Institute of Technology    (9/91 - 8/96)
OSF/1 UNIX Technical Advisor / Senior Lab Assistant
Assisted and trained students and faculty using OSF/1 and VMS based systems. Assist in administration and maintenance of OSF/1 based systems.  
Computer Science House  Rochester, NY
Advanced Research Group Assistant (Volunteer member since 1990)
Administrated house owned and operated systems.  Performed system fine tuning and maintained high security standards on intranet.  Team member in porting OS and drivers in C and assembly on non-standard hardware.  Past projects include porting Athena-X to Kodak “KIMS” stations and robotics project manager.  

Addendum B (Patents and Misc)

Automatic detection of black and white pages in a color document stream
(Holder: Xerox  Date: April 13, 2004) Link
United States US20020005134,  EP1091284A2,  EP1091284A3,  EP1091284B1
An approach is provided for identifying black and white pages in a color document stream. This approach may be utilized in digital printing systems.  
Managing poorly compressible images in a resource limited system
(Holder: Xerox  Date: July 8, 2003) Link
United States US6590672, US 09/408372
A printing system including for compact a limited resource systems including intelligence for managing image quality and memory requirements while meeting high throughput of a real time engine.  
Real-time moving platform management system
(Holder: Pictometry International  Date: June 21, 2012) Link
United States PCT/US2011/043059,  WO2012050648A3
A moving platform system suitable for mounting and use on a moving platform, for various purposes.