Emulation Developer II

BTS Software Solutions
Corridor North, MD, United States
7 days ago
Apply on www.juju.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
3 years minimum
Working hours
Regular working hours
Job source

Tech stack

Microsoft Windows Software Applications Unix C++ (Programming Language) Communications Protocols Continuous Integration Software Debugging Device Drivers Emulators Joint Test Action (IEEE Standards) Microsoft Visual Studio OllyDBg
+8 more
Reverse Engineering Software Engineering WinDBg Fpga Hardware Build Management IDA Pro Build Tools Software Version Control

Job description

  • Design, develop, and test application software to fulfill emulation needs on Windows, Unix, or other specified platforms using modern continuous integration techniques.
  • Perform Software and Hardware Reverse Engineering to correctly model mechanisms of emulation targets.
  • Debug software and hardware systems and identify divergent behavior between systems.
  • Understand networking and inter-component protocols and principles.
  • Lead the design, development, and testing of application software to fulfill emulation needs on Windows, Unix, or other specified platforms using modern continuous integration techniques.
  • Lead Software and Hardware Reverse Engineering efforts to understand mechanisms of emulation target
  • Debug software and hardware systems and identify divergent behavior between systems
  • Understand networking and inter-component protocols and principles

Requirements

  • Strong development skills using low level languages such as C, C++, or Assembly
  • Uses source control, modern build systems, and continuous integration
  • Benefits from experience with modern defensive coding practices, and with tools and techniques such as linters, Address Sanitizer, coverage-guided testing, etc.
  • Ability to identify divergent behavior between emulated systems and real hardware through debugging and reverse engineering.
  • Experience with BDI, JTAG, I2C, etc is beneficial
  • Likewise, experience with Ghidra, IDA Pro / Hexrays, Binary Ninja (binja), radare, GDB, lldb, WinDBG, Ollydbg, or objdump is beneficial
  • Understands the principles of networking and communication protocols and can identify and understand new protocols
  • Experience with any of the following activities is considered a plus: hypervisor development; FPGA development; device driver development; low-level experience in multiple operating systems and instruction sets; and previous experience developing emulators or emulation models, * Minimum five (5) years’ experience programming with C, C++, or assembly,
  • Minimum three (3) years’ experience developing Windows applications using Visual Studio OR minimum three (3) years’ experience developing UNIX applications using make files or comparable build environments OR four (3) years’ experience developing software for embedded systems
  • Experience developing complex programs using C, C++, or other comparable languages,
  • Experience implementing software life cycle management (requirements, design, develop, test, validate, and deploy) using modern continuous integration frameworks,
  • Experience performing software or hardware reverse engineering

Benefits & conditions

Pay Range: $200,000 to $260,000

The BTS pay range for this job level is a general guideline only and not a guarantee of compensation or salary. Our approach to crafting offers considers various factors to establish an equitable and competitive compensation package. These considerations include, but are not limited to, the extent and intricacy of the role’s responsibilities, the candidate’s educational background, their work experience, and the specific competencies crucial for success in the role

About the company

We have a small company persona with a large company ethos and capabilities; we create elegant solutions for complex problems that will enrich people’s lives. BTS offers one of the best benefits packages in the industry: 100% Company PAID health benefits, PTO, 401K matching and vested from day one of employment, to name just a few of our benefits and perks. To learn more about BTS Software Solutions visit us at www.unleashbts.com/careers/.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.juju.com
Prepare application

Good distractions

Loading talks and stories from around this role…