Software Engineer III

Essential Job Functions & Responsibilities

  • Perform complex analytical work to drive the design and development activities of software and firmware for products such as pressure calibrators, HART communicators, pipeline testing devices, and medical equipment diagnostic devices
  • Develop software and firmware to run on various operating systems and hardware platforms that consist of user interface, back end, and hardware interaction and that are reliable, sustainable, and reusable
  • Support development and execution of qualification test plans including verification and validation testing to assure new products meet intended use, regulatory, and industry standards requirements.
  • Break larger projects into smaller ones that can be delivered iteratively and track within Team Foundation Server
  • Participate in the design and requirement gathering for adding new features and functionality into an existing system
  • Document software operation
  • Perform code releases according to the Western process.
  • Lead and participate in peer code reviews
  • Support product design and development teams including Engineering, Manufacturing, Marketing, Materials, and Quality to produce cost effective, manufacturable, and technically sound designs to meet or exceed customer requirements
  • Contribute to Western Engineering technology strategy development
  • Support cost reduction projects in support of Western objectives
  • Support design teams’ efforts to use outside vendors to obtain development, prototypes, testing services to achieve the best balance between cost and delivery to expedite product commercialization schedules
  • Serve as the sustaining engineer for existing products in support of manufacturing operations and customer requirements
  • Develop knowledge of Western IP coverage and identify coverage gaps
  • Attend and contribute in meetings and design reviews
  • Stay current with emerging technologies and apply new knowledge to position
  • Mentor junior engineers, overseeing their designs, code quality and code reviews, and integration into a team
  • Perform other duties as assigned by the Manager or VP of Engineering

Desired Skills & Qualifications

  • C, C++, C#, .NET, XAML
  • Object Oriented Programming
  • Expertise in: processes threads, scheduling, synchronization mechanisms and memory management required
  • Experience with full software lifecycle: specification, design, implementation, integration, debug and maintenance
  • Experience with development drivers and middleware (Linux, Windows, Win 10 IOT Core)
  • Application development for Windows, Windows 10 IOT Core, Linux
  • ARM, x86, Texas Instruments MSP430
  • Agile Development & Scrum
  • Visual Studio with MSDN
  • Self-motivated with the ability to multitask and work independently or within a team.
  • Creative with a positive attitude and the ability to adapt
  • High level and broad base of engineering skills including: Structured Problem Solving, Verification and Validation, and Structured Experimental Design
  • Expert troubleshooting and problem-solving ability
  • Excellent verbal and written communication
  • Various Hand Tools (screw drivers, wrenches, etc.)
  • Oscilloscope, Multimeter, Power Supply, etc
  • Experience in VB, ASM, Python, Java, Xamarin are a plus
  • Experience in Wi-Fi, Bluetooth, USB, Ethernet or other communication methods are a plus
  • Experience with HART Communication is a plus
  • Application development across multiple platforms (Windows, Linux, Android, iOS) is a plus
  • Bachelor of Science in: Computer Science, Software Engineering, or equivalent required
  • Graduate degree desired
  • > 8 years of relevant experience in an engineering role
  • Operating Systems: Windows, Win 10 IOT Core, Linux,
  • Development Environments: Visual Studio w. MSDN, IAR Workbench, Team Foundation Server
  • Microsoft Office Suite: Outlook, Word, Excel, Power Point, Project, Visio
  • Various hand tools: screw drivers, wrenches, etc.
  • Oscilloscope, Multimeter, Power Supply