akrause64@outlook.com

Andrew Krause

Objective

CURRENTLY RESIDING IN WOBURN, MA. LOCAL TO THE BOSTON AREA. Motivated, results-driven senior-level software engineer with extensive experience across multiple technologies including embedded systems, Windows software, C#, C++, and Java. Demonstrated success in the industry with the ability to deliver high-quality software on time.

Skills

Languages: C#, C++, Java, JavaScript.

Operating Systems: Windows, Linux, Mentor Graphics.

Tools: Visual Studio, SQL Management Studio, Team Foundation Server, Git Jira, Target Process, Eclipse, IAR Embedded Workbench, ClearCase, PerForce.

Technologies: .Net Framework, WCF, WiX Toolset, MFC, J2EE, ATL, COM, STL, USB, HTML, CSS, HTTP, Audio/Video Compression, CryptoAPI, DirectShow.

Domain Experience: Imaging and Video, Windows Internals, Embedded Systems, Computer Monitoring, Agile/Scrum.

Experience

Oct 2012 - May 2018

Alstom (formerly GE Global Signaling)

Melbourne, FL

Lead Software Engineer

Software Technical Leader responsible for leading a geographically dispersed team of Software Engineers, Test Engineers, and Safety Engineers using Agile/Scrum methodology.  Responsible for product design, process definition, requirements analysis, and overall execution for a multi-million dollar software project for train scheduling. Performed a large percentage of the hands-on software design and coding in C# with .Net Framework 4.5, SQL Server 2014, and Visual Studio 2015.

ASP.Net Applications: Designed and implemented a multi-page configuration application for a server appliance. Performed all user interface design, ASP.Net coding and browser-side scripting. Utilized ASP.Net 4, jQuery, jQueryUI, and Linq for SQL.

.Net WinForms Applications: Wrote simulation application software for the simulation of other system components. Worked with Systems Engineers and third parties to define and characterize interfaces between systems. Implemented a COM Interop interface to enable script-based automation.

.Net WCF Services: Wrote GPS Server application in WCF for caching and managing GPS asset tracking data received from trains. Built a one-to-many Inter-process Communication (IPC) subsystem for general messaging between applications both remotely and locally.

WPF Applications: Crafted utility applications for testing and troubleshooting inter-process messaging between clients and reporting server status.

Multi-threaded Server Applications: Designed and implemented a multi-threaded, socket-based server application for commuter train scheduling using .Net Framework 4.5 and SQL Server 2014. Wrote installer software using WiX Toolset.

C++ Development: Performed system maintenance on legacy SCADA system software. Wrote and maintained railroad track layout software tools for a Positive Train Control system utilizing modern C++, the Standard C++ Library, and Boost.

MFC Applications: Designed and implemented a performance benchmarking application to verify overall inter-process communications system performance.

 

Feb 2010 Oct 2012

SpectorSoft Corp.

Vero Beach, FL

Senior Software Engineer

Senior member of the corporate products software development team using Agile/Scrum methodology. Developed an enterprise-wide end-user monitoring solution deployed to thousands of customers worldwide. Responsible for extending the product features, maintaining and improving the code base, and working with customers to solve ongoing issues.

Windows Internals: Responsible for maintaining and writing new features for the Windows agent - the monitoring and data collection component of the system. Used extensive knowledge of Windows API hooking, Win32 API, Windows internals, and advanced debugging. Reverse-engineered third-party applications and extended the products monitoring capabilities.

Multi-threaded Server Applications: Maintained and extended several multi-threaded server applications for the collection of monitoring data and enterprise control of monitoring agents.

.Net Applications: Performed feature development for front-end applications that control monitoring agents and viewing captured data. Applications were written with .Net Windows Forms in C#.

 

Dec 1999 Feb 2010

Regulant, Inc.

Windham, NH

Software Engineering Consultant

Independent Software Engineer working alternately in a consulting and a staff-augmentation role. Summary of projects follows. Complete listing of client engagements available here.

Web Technologies: Solely responsible for extending and maintaining clients embedded Web browser. Cross-platform development was done on Microsoft Visual Studio, Linux/Eclipse, and Wind River vxWorks. Worked to bring the browser into standards compliance with the W3C DOM, JavaScript, HTML 4.0 and CSS 2.1. Handled ongoing support issues for this clients worldwide customer base.

Embedded Systems: Completed several projects providing USB capability to clients peripheral devices. Wrote embedded peripheral device firmware on ARM, Blackfin, Intel 8051, and Atmel AVR. Wrote Windows WDM and Mentor Graphics Nucleus USB device drivers. Provided device abstraction libraries in C and C++ to enable application integration.

Mobile Development: Designed and implemented video and audio transcoding module for converting various forms of Web-based video into streaming formats compatible with mobile devices (3GPP, Windows Mobile, iPhone, etc).  Wrote MFC applications for another clients Windows CE based system.

Intellectual Property Consulting:  Provided expert witness testimony, written opinions, and consultation for a patent infringement lawsuit in the field of imaging and software engineering as it relates to scanning systems. Reviewed and evaluated patents for prospective licensing deals for another client. Provided technical assessment and recommendations as to overall patent quality.

Windows Application Development: Built and enhanced C++, MFC applications for several clients. These included an application for producing custom ICC color profiles, an application for ID card reading, a non-linear video editing solution, and an x-ray scanning and visualization application.

Windows Internals: Implemented components to integrate clients single sign-on product with third-party healthcare applications. Utilized Windows internals methodologies such as API hooking, DLL injection, etc. Also worked on a systems management solution which did background monitoring of desktop systems which utilized similar techniques.

Windows System Software:  Architected a COM-based object framework with ATL to enable client to build Visual Basic applications for physical security systems. Implemented a three-tier, COM-based developer toolkit used by customers to integrate with another clients audio conferencing bridge and SQL database.

Java Development:  Wrote Java Servlets in a J2EE, JBoss/Tomcat environment that provided access to clients audio conferencing bridge which provided an encapsulation layer for the middle tier for third party developers. Did several other projects utilizing JNI to connect native and Java application code.

Imaging Software: Implemented image viewer software clients x-ray inspection system utilizing pseudo-color algorithms and data visualization methods. Responsible for biometric scanner software for two different clients. Wrote color profiling application for another client.

Video Systems: Wrote Microsoft DirectShow application software and DirectShow filters for media splitting, multiplexing, and video processing and blending.  DirectShow projects done for multiple clients. Integrated high-definition video cameras with clients non-linear editor. Technologies included MXF file format, DV, JPEG 2000, MPEG compression, Microsoft DirectShow, and several other aspects of digital video and audio.

Offshore Development: Coordinated with and mentored several offshore development teams.

 

Feb 1998 - May 1999

Lotus Development

Cambridge, MA

Engineering Manager and Principal Software Engineer

Manager of a cross-functional team of software engineers, quality engineers, and a technical writer. Responsible for several releases and system components of a document management solution built on Lotus Notes.

 

Aug 1996 Jan 1998

Vivo Software

Waltham, MA

Engineering Technical Leader

Technical leader for several releases of an authoring and playback system for Web-based streaming video and audio for Windows and Macintosh. Responsible for product architecture, project management and contributed to software implementation.

 

Apr 1993 Aug 1996

Avid Technology

Tewksbury, MA

Senior Software Engineer

Responsible for delivering an object oriented software library written in C++ to drive Avid's second generation video display and capture hardware. Involved in all aspects of new hardware bring-up as well as software design. Provided consulting services to product engineering groups for the integration of driver architecture.

 

Apr 1992 Apr 1993

Kodak

Bedford, MA

Software Engineer II

Member of a small group developing image processing services written in C++ for integration into Imagery's document imaging products. Contributed to the design and implementation of a cross-platform image processing class library

 

Apr 1990 Apr 1992

ECRM

Tewksbury, MA

Software Engineer

Designed and implemented driver and application software for ECRM's high- resolution scanners. Responsible for integrating hardware, driver software, and user interface software in C++ on the Macintosh.

 

Nov 1987 Apr 1990

Data Translation

Marlborough, MA

Software Engineer

Designed and implemented software for data acquisition and imaging products on the Macintosh and IBM/PC. Responsibilities included design of diagnostic software, preliminary applications and programmer's subroutine libraries written for C and Pascal.

Education

 

1983 1987                                         University of Rochester                            BS Electrical Engineering        Rochester, NY

1998 2000                                         Babson College                      Attended the Evening MBA Program        Wellesley, MA

Interests

 

Guitar, Running, Backyard Astronomy, Photography