Location: US, WI, WaukeshaApply Now
Must be passionate about delivering products that make a difference. Work in a research-oriented product development environment where engineers are dedicated to solving customer problems. This role will be responsible for the design and development of software for our Tableau product line of digital forensics equipment. The ideal candidate for this position will have a passion for technology and a strong interest in solving complex problems. Tableau forensic products are embedded electronic hardware systems that require full-stack software development skills, offering exposure to a wide array of design and development experiences not found in typical application level development roles.
This full-time position will be located at the OpenText Tableau facility in Waukesha, Wisconsin.
You are great at:
• Design of software systems and components using the concepts of abstraction, data hiding, reuse, ease of maintenance, testability, etc.
• Develop software for embedded computer systems that have limited memory, computational power, and development tools and which interact with low-level peripherals such as timers, counters, UARTs, DMA controllers, ADCs, DACs, etc.
• Dynamically interact with other engineers to efficiently complete software implementations to drive on-time delivery of high-quality features and products that meet stated requirements.
• Develop, test, release, and maintain software in accordance with defined product specifications and standard operating procedures.
• Research complex problems to provide innovative solutions for our products.
• Understand the needs and use cases of our customers and the digital forensics industry to drive meaningful new product concepts and features into our portfolio.
• Foster a culture of continuous improvement in all areas of process and technology and promote the principles of this culture within our team.
What it takes:
• Superior analytical and problem-solving abilities.
• Demonstrated ability to learn new hardware/software/operating systems.
• Ability to work independently to accomplish long-term, complex objectives.
• Ability to develop multi threaded applications.
• Solid experience with Object Oriented programming and design.
• Programming in high-level languages such as C/C++.
• Experience with common revision control systems such as Git.
• Ability to manage multiple, often competing, priorities and tasks.
• Bachelor’s degree in Computer Science, Computer Engineering, or related field or equivalent experience.
• Experience with driver development for high-level operating systems (Linux, MacOS, Windows), including knowledge of OS internals and interaction with hardware at the register level.
• Experience with low-level languages such as assembly.
• Experience with bootloaders such as BIOS and U-Boot.
• Knowledge of scripting languages such as Python, Bash, etc.
• Familiarity with build systems such as Ninja, Gnu Make, etc.
• Experience with user interface design using Qt or similar frameworks.
• Familiarity with web technologies in the server and/or client domains.
• Familiarity with cryptography.
• Familiarity with Agile development methodologies and Scrum principals.
• Experience with common digital media/storage technologies and interfaces, such as USB, PCIe, FireWire, SAS, and SATA.
• Detailed knowledge of common filesystems such as ExFAT, NTFS, APFS, etc.
• At least five years of experience creating software solutions for commercially available hardware products.
At OpenText we understand and value diversity in our employees and are proud to be an Equal Opportunity Employer. We hire the best talent regardless of race, creed, color, national origin, ancestry, disability, marital status, sex, age, veteran status or sexual orientation. If you require accommodation at any time during the recruitment process please email email@example.com. Applicants have rights under Federal Employment Laws including but not limited to: Family and Medical Leave Act (FLMA), Equal Employment Opportunity and Employee Polygraph Protection Act.