Skip to content
StripeStripe

Android BSP Engineer

Develops kernel- and driver-level Android systems for embedded payment devices, including hardware bring-up, peripheral communication, performance optimization, testing, and defect resolution. Requires at least two years of relevant embedded or device-driver experience and proficiency in C/C++ or Kotlin/Java.

About the job

Responsibilities

  • Bring up new devices and lead debugging and performance-tuning exercises across hardware, firmware, and software teams.
  • Design, implement, and maintain drivers and Android services for constrained environments, meeting reliability and security requirements.
  • Own workstreams focused on hardware bring-up, peripheral drivers and communication, and power and performance management and optimization.
  • Analyze bug reports and manage defect resolution, including issue disposition, resolution, and status reporting.
  • Support global teams by providing clear technical information.
  • Perform code reviews to ensure high-quality designs and implementations.
  • Partner with QA staff to create, maintain, and execute appropriate test cases.
  • Proactively solve problems and work independently or collaboratively with limited guidance.

Requirements

  • 2+ years of software engineering experience in device driver development, embedded systems, or operating systems.
  • 2+ years working with mobile or other connected devices.
  • Experience with automated testing, build systems, and inter-component communication protocols such as UART, GPIO, SPI, and I2C.
  • Proficiency in C/C++ or Kotlin/Java.
  • Experience with Android OS and familiarity with associated software development tools.
  • Degree in computer science, computer engineering, electrical engineering, or equivalent practical experience.
  • Experience adding, monitoring, and parsing telemetry data to proactively resolve issues.
  • Fluency in written and spoken English and Mandarin Chinese.

Nice-to-haves

  • Experience with ARM platforms.
  • Experience working with microcontrollers.
  • Knowledge of EMV.
  • Knowledge of cryptography, including symmetric and asymmetric cryptography, key management, and key exchange.
  • Experience with POS hardware and peripherals.
  • Knowledge of PCI technology, transaction processing, and related retail standards.

Skills

Android, C/C++, Kotlin, Java, Embedded Systems, Device Drivers, Operating Systems, Uart, Gpio, Spi, I2C, Arm, Microcontrollers, Automated Testing, Cryptography