Android Platform Engineer

  • Full-time
  • Current Square Employee?: Apply via go/jobs with your Square email.

Company Description

We believe everyone should be able to participate and thrive in the economy. So we’re building tools that make commerce easier and more accessible to all. We started with a little white credit card reader but haven’t stopped there. Our new reader helps our sellers accept chip cards and NFC payments, and our Cash app lets people pay each other back instantly. We’re empowering the independent electrician to send invoices, setting up the favorite food truck with a delivery option, helping the ice cream shop pay its employees, and giving the burgeoning coffee chain capital for a second, third, and fourth location. Let’s shorten the distance between having an idea and making a living from it. And make it easier for customers to shop and pay at their favorite businesses. We’re here to help sellers of all sizes start, run, and grow their business—and helping them grow their business is good business for everyone.

Job Description

Square’s Hardware Team builds the tangible connection to Square. We started with a simple and elegant Reader that turns any phone or tablet into a mobile point of sale - and we continue to lead this category with advances in chip card and NFC technology. Next, we introduced the Square Stand, the best way to turn your iPad into a countertop point of sale. As we introduce more products, we will meet the needs of more and more sellers with stand-out hardware products, globally. In this role, you will be developing the platform that powers Square’s hardware products.

Qualifications

You will:

  • Develop an Android software platform for unique mobile products

  • Design great code within the constraints and opportunities of powerful embedded platforms

  • Collaborate on system-side code, communication protocol design, and kernel development on Linux/Android platforms

You have:

  • 4+ years experience with firmware and embedded software development 
  • Expertise in C software development, tools, and debug with strong software development discipline (including modularization and test methods)

  • Experience in at least one other development language (Java, C++, Ruby, Python, etc)

  • Experience with ARM SoCs

  • BS in CS, CE, EE, or equivalent practical experience

Even better:

  • Experience developing Linux Kernel extensions and device drivers

  • Familiarity with bootloaders and the Linux operating system

  • Familiarity with symmetric and asymmetric cryptographic primitives

  • Experience porting Android to a new device

  • Experience in Android application development

  • Understanding of common communications protocols (e.g. SPI, UART, I2C, USB)

  • Experience with power management and battery-powered systems

  • Ability to debug issues using a combination of software and lab equipment such as oscilloscopes and protocol analyzers

  • Experience shipping consumer electronics products

  • Familiarity with reading schematics and basic electrical design principles

Additional Information

At Square, we value diversity and always treat all employees and job applicants based on merit, qualifications, competence, and talent. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status. We will consider for employment qualified applicants with criminal histories in a manner consistent with the requirements of the San Francisco Fair Chance Ordinance.

Privacy Policy