Emulation Developer II

BTS Software Solutions
Annapolis Junction, MD, United States
1 day ago
Apply on jobs.localjobnetwork.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Compensation
$200,000.0 - $260,000.0
Working hours
Regular working hours

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

BTS Software Solutions is a Service Disabled Veteran Owned Small Business who are community-focused innovators who transform ideas into technology to serve people. We recognize that innovation is only valuable when applied towards a needed solution. Technology has no value without the hard work to turn ideas into reality. Our roots are in helping save Soldiers’ lives through technology. We bring that ethos to serving our community. We create solutions that touch people’s lives - products to communicate, to connect companies with customers, to stay informed, to save lives, and to enhance lives., 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 jobs.localjobnetwork.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

2:03 min

Microsoft integrating native Unix coreutils into Windows environments

Chris Heilmann +2 · LIVE

1:20 min

Identifying multi-disciplinary talent for developer experience engineering roles

Hazal Mestci +1 · Coffee With Developers

2:04 min

Defining timestamps and the international standard format

Denny Biasiolli Denny Biasiolli · Europe 2026 Virtual

1:53 min

Entering software development through retro computing platforms

Alex Soto Alex Soto · LIVE

3:51 min

Technical skills and collaborative mindsets for mobility engineering roles

Georg Kühberger +1 · LIVE

1:41 min

Reverting destructive Unix commands with the Undo utility

Chris Heilmann +2 · LIVE

Videos

See all

Related articles

See all