About The Position

This is an opportunity to develop software tools that control and automate hardware testing. You'll work on designing & building maintainable software that directly interfaces with test hardware and equipment. This isn't high-level application software—it's hands-on software engineering focused on creating tools that manage the actual execution of hardware tests. If you enjoy hands-on software development with clear real-world impact, and you're interested in the intersection of software and hardware testing, this role offers meaningful work with tangible results.

Requirements

  • BS EE or CS 7+ years experience
  • Understanding of software design principles including design patterns, separation of concerns, and writing maintainable code
  • Proficiency in C++ for systems-level development and integration
  • Proficiency in one higher-level programming language such as Python or similar for application-level development
  • Proficiency in one scripting language (Lua preferred)
  • Experience in designing databases
  • Solid grasp of object-oriented design principles including encapsulation, polymorphism, inheritance hierarchies
  • Ability to read and interpret schematics to understand circuit behavior and identify relevant test points
  • Understanding of server-client architecture and socket programming for building networked test systems

Nice To Haves

  • Basic understanding of electrical engineering concepts including voltage, current, digital logic fundamentals, and signal integrity—enough to understand hardware constraints and test requirements
  • Ability to read and interpret schematics to understand circuit behavior and identify relevant test points
  • Practical familiarity with Objective-C code, able to read and work with existing Objective-C implementations
  • Familiarity with Linux user space applications, including system calls, process management, inter-process communication, and performance profiling
  • Strong problem-solving skills with an ability to decompose complex systems into manageable components
  • Quickly adapting to different code bases and technologies to identify and implement effective software solutions across our testing infrastructure
  • Experience with test automation or testing frameworks
  • Knowledge of hardware-software co-design considerations
  • Interest in exploring AI applications in testing and automation
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service