Jobs · Engineering · Kansas

Staff Application Software Engineer C++

NovaTech Automation · Lenexa, KS · 3 wk ago
On-siteEngineeringFull-time

POSITION OVERVIEW

Hybrid position - Tuesday-Thursday in office; Monday & Friday from home, if desired.

KEY RESPONSIBILITIES

  • Lead the architectural design of embedded application software, ensuring alignment with NovaTech’s technology strategy and industry best practices
  • Define and enforce software design patterns, coding standards, and development frameworks across the engineering team
  • Evaluate and recommend technology platforms, languages, and tools to meet evolving product and operational requirements
  • Conduct technical design reviews and provide authoritative guidance on complex engineering challenges
  • Develop, test, and maintain high-quality application software for automation and control systems supporting electric utilities and critical infrastructure
  • Own the full software development lifecycle for assigned applications, from requirements analysis through deployment and post-release support
  • Write clean, well-documented, and performant code that meets functional requirements and security standards
  • Troubleshoot and resolve complex software defects, performance issues, and integration failures in a timely manner
  • Serve as the primary technical resource and subject matter expert for application software engineering within the team
  • Provide hands-on mentorship and technical guidance to software engineers at all levels, supporting their professional growth
  • Lead and participate in code reviews, providing constructive feedback to elevate code quality across the team
  • Collaborate with the Director of Software Engineering to define technical roadmaps and engineering capacity plans
  • Partner with kernel, web, and Windows development teams to define requirements and deliver integrated software solutions
  • Engage with customers and stakeholders as a technical representative to understand operational needs and translate them into software capabilities
  • Coordinate with cybersecurity and compliance teams to ensure application software adheres to applicable standards for critical infrastructure environments
  • Identify and drive opportunities to improve development processes, tooling, automation, and software delivery pipelines
  • Stay current with emerging technologies, industry trends, and best practices in application software engineering and industrial automation
  • Contribute to and maintain internal technical documentation, including architecture diagrams, API specifications, and developer guides

EDUCATION & EXPERIENCE

  • Bachelor’s degree in Computer Science, Software Engineering, Electrical Engineering, or a related technical field - Required
  • Master’s degree in Computer Science or Software Engineering - Preferred
  • 8+ years of progressive experience in application software development - Required
  • 3+ years in a senior or lead engineering role with demonstrated technical leadership responsibilities - Required
  • Experience developing software for industrial automation, SCADA, energy management, or utility control systems - Preferred
  • Experience working in or with critical infrastructure environments subject to NERC CIP or similar regulatory frameworks - Preferred
  • Expert in object-oriented C/C++ - Required
  • Proficient in one or more object-oriented or systems programming languages such as Python or JavaScript - Preferred
  • Knowledge of Yocto / openembedded build system - Required
  • Experience with software architecture patterns including microservices, event-driven architecture, and RESTful API design - Required
  • Proficiency with version control systems, CI/CD pipelines, and DevOps tooling (e.g., Git, Jenkins, Azure DevOps) - Required
  • Familiarity with industrial communication protocols such as DNP3, Modbus, IEC 61850, or OPC-UA - Preferred
  • Experience with cloud platforms (AWS, Azure, or GCP) and containerization technologies such as Docker and Kubernetes - Preferred
  • Knowledge of cybersecurity principles and secure coding practices applicable to critical infrastructure software, including IEC 62443-4-1 - Preferred
  • Experience with relational and time-series databases relevant to operational technology environments - Preferred
  • Strong analytical and problem-solving skills with the ability to decompose complex technical challenges into actionable solutions - Required
  • Exceptional verbal and written communication skills, including the ability to convey technical concepts to non-technical stakeholders - Required
  • Demonstrated ability to lead technical initiatives and influence engineering direction without direct management authority - Required
  • High degree of ownership, accountability, and attention to detail in delivering mission-critical software - Required
  • Collaborative mindset with the ability to work effectively in a cross-functional, multi-disciplinary team environment - Required
  • Commitment to continuous learning and staying current with evolving software engineering practices and technologies - Required

Similar jobs

C++ Software Engineer

PlanIT Group, LLCMoorestown, NJ· 5 mo ago
Information Technologyapply on www2.jobdiva.com

C++ Software Engineer

Johns Hopkins Applied Physics LaboratoryLaurel, MD· 2 wk ago
Engineering$100k/yrapply on careers.jhuapl.edu

C++ Software Engineer

FishEye Software, Inc.Marlborough, MA· 1 wk ago
Engineering$80k–$190k/yrapply on ajax.googleapis.com