EngineerJobs.io
← Back to all jobs

Job Description

Berla Corporation is hiring an Embedded Software Engineer in Annapolis, MD (onsite) to support a research team building forensic tooling for automotive vehicle systems. This role combines embedded firmware and operating system analysis with practical hardware access and repeatable extraction methods, helping translate technical findings into reliable capabilities for downstream use.

Responsibilities

  • Extract and analyze embedded firmware and operating system software from automotive systems to identify key artifacts, including data structures, storage formats, and protection mechanisms
  • Access embedded devices using hardware and debug interfaces to acquire firmware and memory and recover data from locked, damaged, or protected devices using appropriate techniques
  • Work with embedded operating systems including Linux, QNX, and Android
  • Address device protections where required, including secure boot and encryption, and obtain ADB and root access to target systems as part of analysis
  • Decrypt and analyze encrypted SQL databases and proprietary storage formats to recover and interpret structured data
  • Analyze recovered data to identify, correlate, and validate artifacts of interest, and document findings for downstream forensic use
  • Develop repeatable, forensically sound extraction and decoding methods while maintaining clear documentation of methodologies, target hardware, and attack surfaces
  • Build automation to parse, decode, and validate recovered data at scale
  • Maintain a code repository aligned with industry best practices as directed by leadership
  • Collaborate with engineers, analysts, and product managers to prioritize targets and move research into supported product capabilities

Requirements

  • At least 3 years of experience in embedded software, embedded systems, or embedded security
  • Experience with binary analysis, including disassembly and decompilation, plus reading assembly on embedded-class architectures
  • Familiarity with embedded systems based on Linux, QNX, and Android, including how they store and protect data
  • Hands-on hardware skills, including working with debug interfaces, board-level rework, and signal capture
  • Familiarity with embedded communication buses and the ability to observe and interpret device traffic
  • Proficiency in a scripting or programming language used to build parsing and automation tooling
  • Solid understanding of file systems, data encoding, encrypted SQL databases, and cryptographic and secure-boot concepts
  • Strong analytical and data analysis skills, including interpreting, correlating, and validating data and working through undocumented systems
  • Experience maintaining code in a version-controlled repository following established best practices
  • Clear communication skills, comfort working cross-functionally, and the ability to travel locally and internationally as needed

Technologies

Linux, QNX, Android, ADB, SQL

Benefits

  • 401(k)
  • 401(k) matching
  • Dental insurance
  • Flexible schedule
  • Health insurance
  • Life insurance
  • Paid time off
  • Vision insurance

Base salary range: $125,000 - $150,000 per year

Location: Annapolis, Maryland

Type: Full Time

Work location: In person

Similar Jobs