Job Description
Our hardware team builds the tangible connection to all that is Square. As we introduce more and more of our products to the world, our hardware footprint expands. In this role, you will be responsible for developing the embedded software in Square’s hardware products. This role will report to the firmware engineering manager for our Connected Hardware products.
You will:
- Build a common firmware platform for all of Square’s hardware products
- Write code within the constraints of tiny embedded systems
- Own firmware driving NFC and contactless payment subsystems
- Move up the stack to write and collaborate on system-side code; including protocol design
- Develop tests to validate product features, drivers, and system functionality
- Build reliable tools to support firmware development and product debugging
- Collaborate with manufacturing, electrical engineering, and release teams
Qualifications
You have:
- Experience developing and debugging wireless connectivity solutions in embedded systems, using technology such as NFC, RFID, Bluetooth Classic, BLE, or Wi-Fi
- A software development discipline, including modularization, documentation, and test methods
- Firmware / Embedded software development experience
- Experience leading large multi-person projects, from design, implementation, deployment and monitoring phases
- Expertise in C software development, tools, and debugging
- Understanding of common communications protocols (e.g. SPI, UART, I2C, USB), debugging practices (e.g. JTAG and associated GDB integrations), and electrical design principles
- BS in CS, CE, EE, or equivalent practical experience
- Experience with real-time operating systems
- Experience shipping consumer electronics products
- Experience debugging issues cross functionally, using a combination of software and lab equipment such as oscilloscopes and protocol analyzers
Even better if you have experience in any of the following:
- Experience developing wireless communication solutions using NFC or RFID
- Experience developing contactless payment solutions
- Experience using Python (or similar scripting languages) in automated testing, build systems, or device firmware communication
See more jobs at Square
Apply for this job