Logo
A-Line Staffing Solutions

Senior Win32 API Software Engineer

A-Line Staffing Solutions, Novi, Michigan, United States

Save Job

Title: Senior Windows Software Engineer Location: Novi, MI - Hybrid Salary Range: $100-$120k Note: This position is a direct hire on W2, and is NOT open to C2C Responsibilities As a member of the software development group you will be part of a dynamic development team tasked with maintaining and extending our current Win32 MFC-based products and developing our next-generation product based on .NET technologies. Responsibilities Limited but continual maintenance and extension of current Win32 MFC-based products. Developing our next generation products based on .NET and Web technologies Detailed technical design of system architecture and software components based on requirements. Development and execution of unit test procedures and updating of documentation on work performed. Skills/Experience Master’s degree or Bachelor's degree in Software Engineering and 5+ years of experience. Strong understanding of .NET, MFC, Win32 API, and COM. Demonstrated ability to master diverse technologies. Excellent coding skills in C++ and C#. Experience developing GUIs in both MFC, WPF or Windows Forms. Experience with various file format standards (ASCII, MDF3/4, ASAP, HEX, DBC, …) Windows network programming experience and protocol fundamentals including sockets. Experience using remoting systems such as SOAP, REST or DCOM (among others). Strong knowledge of troubleshooting and debugging application/services on Windows. Experience with communication transport layers such as CAN, RS232, USB and Ethernet. Experience with SAE, ISO and ASAM communication protocols such as CCP, XCP, J1939, ISO14229 and ISO15765. Accurately estimate time and resources required for completion of specific features. Writing comprehensive functional and/or design specifications. Design code for re-usability and unit testability. Good understanding of basic design practices (design patterns) and how/when to project them into different environments and languages. Identify, evaluate and mitigate technical project risks. Ability to translate feature requests into the most appropriate internal design. Experience using version-control and bug tracking systems. Understanding and appreciation of software development lifecycles. Experience using or developing data acquisition or multimedia systems. Experience with real-time systems or kernel mode programming. Knowledge of automobile and engine controls systems. Essential Non-Technical Skills Positive proactive attitude and solid work ethic. Strong communication skills and organizational skills. Experience with Microsoft Office applications. Detail-oriented and methodical coding mentality. Ability to work independently.