Job Title:
Software Reverse Engineer (Level 2)

Company: VAILERON

Location: Annapolis, MD

Created: 2024-04-24

Job Type: Full Time

Job Description:

Vaileron is currently looking to hire a Software Reverse Engineer (Level 2) on a full time, permanent basis. This opportunity must be performed onsite in Annapolis Junction, MD (government site) and requires an active TS/SCI w/ Full Scope Polygraph security clearance. Relocation assistance is available for non-local candidates.Is this your next job Read the full description below to find out, and do not hesitate to make an application.Title: Software Reverse Engineer (Level 2)Location: Annapolis Junction, MD (government site)Job Overview:As a Software Reverse Engineer, you will be responsible for dissecting, analyzing, and understanding software systems to uncover vulnerabilities, improve security, and extract useful information. You will work closely with the development and security teams to enhance the resilience of software applications against potential threats.Responsibilities:· Reverse Engineering and Exploitation:o Disassemble binaries using IDAPro or a similar RE tool.o Perform process-level debugging using WinDbg, Softice, gdb, or similar debugger.o Identify software vulnerabilities and develop exploits to take advantage of them.o Develop production-quality software based on developed exploits.· Technical Leadership:o Lead the technical design of software components.o Lead integration testing of software components.o Lead technical design of software systems.o Lead integration testing of software systems.· Software Development:o Code in C and assembly on Linux, UNIX, and/or Windows for at least six (6) years.o Develop modular software components based on defined software designs.o Use a software integrated development environment (IDE) such as Visual Studio, Eclipse, or a similar IDE.o Develop and execute unit tests.o Maintain code in a software version repository such as Subversion, CVS, or a similar tool.· Networking and System Understanding:o Familiarity with TCP/IP network protocols or SQL programming.o Understanding of software compilers, operating system architecture, and/or device drivers.· Documentation:o Document component designs within a HighLevel Design (HLD) document.o Elicit user and system requirements and document requirements in a Concept of Operations (ConOps) document.o Design modular software systems for maximum reuse and maintainability.o Document system designs within a HighLevel Design (HLD) document.o Plan and develop system integration tests and document test strategy in a formal Test Plan document.· Standards and Processes:o Set development standards and processes with the technical project manager and systems engineer. Qualifications:· Seven (7) years of software engineering experience with a Bachelor's or Master's degree in Computer Science, Electrical Engineering, Computer Engineering, Physics, or a related field, or· Fourteen (14) years of software engineering experience without a degree.· Six (6) years of experience coding in C and assembly on Linux, UNIX, and/or Windows.