Android BSP Engineer

About Stripe

Stripe is a financial infrastructure platform for businesses. Millions of companies—from the world’s largest enterprises to the most ambitious startups—use Stripe to accept payments, grow their revenue, and accelerate new business opportunities. Our mission is to increase the GDP of the internet, and we have a staggering amount of work ahead. That means you have an unprecedented opportunity to put the global economy within everyone’s reach while doing the most important work of your career. 

About the team

Stripe Terminal helps Stripe users extend their online presence into the physical world. The Terminal team’s mission is to make it as easy for businesses to accept in-person payments as the Stripe API has done for online payments. With Terminal, businesses can unlock in-person payments use cases that are right for their business model—whether it’s creating a flagship retail experience, extending their website to a pop-up store, or enabling a mobile point-of-sale at their next event. 

What we are looking for:

As an Android BSP Engineer, you will be responsible for the kernel and driver level system development, which includes building, troubleshooting, and writing automated tests for the Android system on our embedded payments platforms. This team works closely with partner teams throughout the hardware and software product lifecycle, from hardware manufacturing to Android app teams. We also work with external vendors on part selection and initial hardware bring-up.

What you’ll do:

  • Bring up new devices and lead debugging and performance tuning exercises that span multiple hardware/firmware/software teams.
  • Design, implement, and maintain drivers and Android services that operate efficiently in a constrained environment and meet the reliability and security requirements of the industry.
  • Own the definition of one or more work streams focused on hardware bring-up, peripheral drivers and communication, and power and performance management and optimization.
  • Analyze bug reports and manage the defect resolution process (disposition issues, resolve issues, and report issue status).
  • Interact with global teams with excellent communication skills to provide support information
  • Routinely perform code reviews to ensure high quality designs and implementation
  • Assist in ensuring quality and timeliness of product/feature development. Work closely with QA staff to ensure appropriate test cases are created, maintained, and executed.
  • Proactively solve problems and work independently and within a team environment, with limited guidance.

Who you are

We’re looking for someone who meets the minimum requirements to be considered for the role. If you meet these requirements, you are encouraged to apply. The preferred qualifications are a bonus, not a requirement.

Minimum requirements

  • 4+ years software engineering experience in device driver development, embedded systems, or operating systems
  • 2+ years working with mobile or other connected devices
  • Experience using automated testing, build systems, and inter-component communication protocols such as UART, GPIO, SPI, I2C, etc.
  • Proficiency in C/C++ or Kotlin/Java
  • Knowledge of operating systems (custom Android, embedded - Linux, or Real Time Operating Systems), familiarity with software development tools
  • Degree in CS, CE, EE, or equivalent practical experience
  • Experience adding, monitoring and parsing telemetry data to proactively resolve issues
  • Fluency in both written and spoken English and Mandarin Chinese to be able to communicate with our vendors and users/customers

Preferred qualifications

  • Experience with ARM platform
  • Experience working with microcontrollers
  • Knowledge of EMV.
  • Knowledge of cryptography, symmetric, asymmetric, key management and exchange is an asset.
  • Experience with POS Hardware and peripherals.
  • Knowledge and expertise of PCI technology, transaction processing, and related retail standards.

In-office expectations

Office-assigned Stripes in most of our locations are currently expected to spend at least 50% of the time in a given month in their local office or with users. This expectation may vary depending on role, team and location. For example, Stripes in Stripe Delivery Center roles in Mexico City, Mexico, Bengaluru, India, and Dublin, Ireland work 100% from the office. Also, some teams have greater in-office attendance requirements, to appropriately support our users and workflows, which the hiring manager will discuss. This approach helps strike a balance between bringing people together for in-person collaboration and learning from each other, while supporting flexibility when possible.

Pay and benefits

The annual salary range for this role in the primary location is NT$1,564,320 - NT$2,346,480. This range may change if you are hired in another location. For sales roles, the range provided is the role’s On Target Earnings (“OTE”) range, meaning that the range includes both the sales commissions/sales bonuses target and annual base salary for the role. This salary range may be inclusive of several career levels at Stripe and will be narrowed during the interview process based on a number of factors, including the candidate’s experience, qualifications, and specific location. Applicants interested in this role and who are not located in the primary location may request the annual salary range for their location during the interview process.

Specific benefits and details about what compensation is included in the salary range listed above will vary depending on the applicant’s location and can be discussed in more detail during the interview process. Benefits/additional compensation for this role may include: equity, company bonus or sales commissions/bonuses; retirement plans; health benefits; and wellness stipends.

Office locations

Taipei

Team

Terminal

Job type

Full time

We look forward to hearing from you

At Stripe, we're looking for people with passion, grit, and integrity. You're encouraged to apply even if your experience doesn't precisely match the job description. Your skills and passion will stand out—and set you apart—especially if your career has taken some extraordinary twists and turns. At Stripe, we welcome diverse perspectives and people who think rigorously and aren't afraid to challenge assumptions. Join us.