Location Ottawa (Remote) Language English (required) Type Permanent, Full-time Security Clearance Enhanced Reliability / Secret (Level II) - holder / eligible
Our Private Sector consulting client requires a capable
Software Analyst with particular expertise in the area of
Software Reverse Engineering and Analysis to join their dynamic Ottawa consulting team, on a full-time and permanent basis.
Reporting to the Engineering Manager (Systems and Software Analysis), the incoming Software Analyst will participate in major projects and campaigns, and provide software analysis, patent assessments, and software reverse engineering services, plus associated documentation and patent portfolio development services.
He/She will provide Technical and Intellectual Property support to external clients and will be responsible for addressing customer inquiries and concerns. Your proven experience in the Software Reverse Engineering market, along with your excellent interpersonal skills, will be important assets to achieving success in this capacity.
List of some key responsibilities includes:- Acting as an internal expert on software analysis for mobile / desktop / server / cloud platforms and/or embedded software systems (i.e. no source code available), and conducting critical analysis of various Intellectual Property aspects based on reverse engineering results
- Providing analysis through dynamic and static Software Reverse Engineering of Operating Systems File System and devices/peripherals
- Logging, tracing, and identifying system and function calls at various levels and for various platforms as dictated by the needs for finding Intellectual Property Evidence of Use (EoU) support
- Writing customer-facing reports to explain analysis; plus, acting as a technical verifier for reports prepared by other team members
- Contributing to technology trend analysis, software reverse engineering analysis, research, and documentation.
Required Qualifications and Experience: - B.Sc. and/or 7+ (seven-plus) years of relevant industry experience... or equivalent academic experience in several of the following:
- Fundamental understanding of computer architecture
- Fundamental understanding of reverse engineering principles
- Fundamental understanding of modern operating systems
- Software applications analysis at the binary level for Android, Linux, iOS, Windows, and macOS
- Patching of Data and Instructions
- OS Modification (Substrates)
- Code Injection, Hooking, or Redirection
- Familiar with Debugging and Disassembly Tools (Ida Pro, ADB, Hopper, etc.)
- Analysis of software applications at the instruction and data flow level
- Identifying, recommending, and executing Software Reverse Engineering methodology.
- Additional preferred qualifications and experience include:
- Sound knowledge of ARM/ARM64, x86/x64 Processor Architectures
- Fluent in iOS, Android OS-es and Application Packaging
- Understanding the fundamentals of modern OS (Linux, Android, iOS, Windows, etc.) and controllers (processors from QC Snapdragon Apple Axx)
- Advanced knowledge of (controller S/W & H/W architecture), (memory mapping for various OS
- Fluent with Reverse Engineering Toolkits (IDA Pro, Hopper, etc.)
- Fluent in C/C++, Java, and at least 1 scripting language
- Knowledge of embedded systems architecture including firmware reverse engineering, checksum generation, and gaining access to hardware debug interfaces such as JTAG, and UART.
- Strong analytical skills combined with the ability to handle multiple sources of information
- Excellent oral and written communication and presentation skills
- Assets include experience in intellectual property services.
If you are interested in this exciting opportunity and can meet and/or exceed the listed required skills profile, then please
apply today or
send your resume directly to for immediate consideration.
We look forward to hearing from you soon. Thank you.