Emulation Developer II
REQ ID:989-03
BTS Software Solutions is seeking an Emulation Developer II with an active TS/SCI w/ POLY to join our team in Annapolis Junction, MD.
What You'll Get To Do:
- 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
You'll Bring These Skills:
- 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
Education/Qualifications:
- 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
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 BTS Software Solutions:
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/.
BTS Software Solutions is an Equal Opportunity Employer (EOE). All employment decisions shall be made without regard to age, race, creed, color, religion, sex, national origin, ancestry, disability status, veteran status, sexual orientation, gender identity or expression, genetic information, marital status, citizenship status or any other basis as protected by federal, state, or local law