ETC (Electronic Transaction Consultants)

Software Engineer

ETC (Electronic Transaction Consultants)

full-time

Posted on:

Location Type: Office

Location: MiddletonWisconsinUnited States

Visit company website

Explore more

AI Apply
Apply

Job Level

Tech Stack

About the role

  • Write and review critical code in Rust, C, and C++ for embedded and distributed applications.
  • Analyze complex software problems, propose solutions, and apply unique approaches to achieve quality, reliability, and performance goals.
  • Contribute to software architecture for embedded Linux systems, real-time applications, and distributed services.
  • Promote best practices in Yocto, Zephyr, BSP bring-up, Linux device drivers, and OpenThread networking.
  • Lead investigative work, including feasibility studies, prototyping, and research into emerging technologies applicable to ETC products.
  • Provide career guidance, hands-on code reviews, and day-to-day technical support to junior and mid-level engineers.
  • Lead onboarding bootcamps, workshops, and technical talks to accelerate learning and raise our collective technical bar.
  • Model constructive feedback and foster a culture where everyone is both a teacher and a learner.

Requirements

  • Bachelor's degree in Computer Science, Computer Engineering, or equivalent field
  • All levels of previous work experience will be considered
  • Written and oral communications with marketing, engineering, manufacturing, and R&D management to define and modify product or process specifications
  • Written and oral presentation of project schedule and status to engineering or project managers
  • Demonstrates awareness and understanding of related technology development both inside and outside ETC
  • Creativity and innovation skills required to solve new problems
  • Demonstrates ability to make independent decisions
  • Demonstrates ability to dissect problems and projects into manageable tasks
  • Demonstrates ability to perform multiple tasks and set own priorities
  • Well experienced in software development languages (assembler, C, C++, etc.)
  • Experienced in the application of software design methodologies
  • Grasps a full range of applicable software engineering principles and practices and has the ability for effectively applying accepted approaches to complex engineering problems
  • Demonstrates ability to accurately estimate time to complete assigned tasks
  • Performs engineering assignments of moderate technical breadth
  • 7-10+ years of professional software development experience in C or C++ preferred.
  • Demonstrated ability to mentor engineers and raise technical standards.
  • Strong debugging and problem-solving skills in production-grade systems of significant scope.
  • Proven ability to work independently and make technical decisions with limited oversight.
  • Experience with Rust in production environments.
  • Background in embedded Linux development (drivers, BSPs, build systems).
  • Familiarity with networking protocols such as Thread or OpenThread.
  • Experience in real-time or performance-critical systems.
  • Demonstrated success leading research or introducing new technologies into production systems.
Benefits
  • Four weeks of PTO starting your first year.
  • Medical, dental, and vision coverage starting day one.
  • 401(k) with employer match.
  • Fitness center, at-cost deli, wellness programs.
  • As a 100% employee-owned company, every team member shares in our success through our ESOP.
Applicant Tracking System Keywords

Tip: use these terms in your resume and cover letter to boost ATS matches.

Hard Skills & Tools
RustCC++embedded Linuxreal-time applicationsLinux device driversYoctoZephyrBSPOpenThread
Soft Skills
creativityinnovationindependent decision-makingproblem dissectiontask prioritizationmentoringdebuggingproblem-solvingcommunicationleadership
Certifications
Bachelor's degree in Computer ScienceBachelor's degree in Computer Engineering