Lead Software Engineer (iOS), Connected Devices
Company Description
Since we opened our doors in 2009, the world of commerce has evolved immensely, and so has Square. After enabling anyone to take payments and never miss a sale, we saw sellers stymied by disparate, outmoded products and tools that wouldn't work together.
So we expanded into software and started building integrated, omnichannel solutions - to help sellers sell online, manage inventory, offer buy now, pay later functionality through Afterpay, book appointments, engage loyal buyers, and hire and pay staff. Across it all, we've embedded financial services tools at the point of sale, so merchants can access a business loan and manage their cash flow in one place. Afterpay furthers our goal to provide omnichannel tools that unlock meaningful value and growth, enabling sellers to capture the next generation shopper, increase order sizes, and compete at a larger scale.
Today, we are a partner to sellers of all sizes - large, enterprise-scale businesses with complex operations, sellers just starting, as well as merchants who began selling with Square and have grown larger over time. As our sellers grow, so do our solutions. There is a massive opportunity in front of us. We're building a significant, meaningful, and lasting business, and we are helping sellers worldwide do the same.
Job Description
You will design and develop new functionality for new and existing 1st and 3rd party hardware connected to Square's iOS Points of Sale. The Connected Devices team is a mobile development team focused on connecting Square's mobile Points of Sale to hardware devices (card readers, Square Stand, printers, weighing scales, barcode scanners, and more). You will collaborate with other engineers and our product and design teams to ensure that millions of merchants have a remarkable and reliable experience using a variety of 1st and 3rd party peripherals.
You will:
- Design and implement features as part of Square's new hardware initiatives in support of first-and-third party hardware experiences for both merchants and developers.
- Collaborate closely with product managers, designers, and other engineers.
- Participate in the full lifecycle of product development, from early definition through release and beyond.
Qualifications
You have:
- 8+ years of iOS software development experience, developing scalable production software and an excellent command of engineering fundamentals.
- Ability to lead and mentor a group of software engineers to deliver solutions while fostering growth
- Motivation to build highly reliable, well tested features that work regardless of network quality or availability.
- Strong communication skills and a strong desire to deliver a great product.
- A deep sense of customer empathy and an interest in influencing the team's direction.
- Experience with connecting hardware to iOS devices
- Experience with bluetooth devices or other peripheral devices.
Technologies we use and teach:
- Swift and Objective-C
- Square's open source iOS frameworks: Workflow (state management), Blueprint (declarative UI)
- UIKit, Core Bluetooth, Core Data, and External Accessory framework
- Unit tests, snapshot tests, integration tests
- Service APIs and Protocol Buffers
- Bazel for our build environments
Qualifications
You have:
- 8+ years of iOS software development experience, developing scalable production software and an excellent command of engineering fundamentals.
- Ability to lead and mentor a group of software engineers to deliver solutions while fostering growth
- Motivation to build highly reliable, well tested features that work regardless of network quality or availability.
- Strong communication skills and a strong desire to deliver a great product.
- A deep sense of customer empathy and an interest in influencing the team's direction.
- Experience with connecting hardware to iOS devices
- Experience with bluetooth devices or other peripheral devices.
Technologies we use and teach:
- Swift and Objective-C
- Square's open source iOS frameworks: Workflow (state management), Blueprint (declarative UI)
- UIKit, Core Bluetooth, Core Data, and External Accessory framework
- Unit tests, snapshot tests, integration tests
- Service APIs and Protocol Buffers
- Bazel for our build environments