Job Description
Devices Developer Experience (DDX) is a growing internal team that serves developers working with and testing Square hardware devices. We develop internal software products, firmware tools, test software infrastructure, and developer infrastructure to serve our internal customer teams. Some of our customer teams include the Android platform teams, firmware teams, Quality Assurance (QA) teams, and app development teams.
As a Senior Software Engineer on the team, you will play a critical role in enhancing the productivity and efficiency of developers working with Square hardware devices. You will focus primarily on the Test Platform, contributing to the development and maintenance of essential tools, libraries and infrastructure that support hardware-in-the-loop testing. Your work will directly impact the quality and reliability of Square's hardware products. You will report to the engineering manager for the team and will have the opportunity to work on impactful projects that directly contribute to the success of Square's hardware products and the broader Square ecosystem. Join us to make a difference in the world of developer experience and hardware testing.
You will:
- Develop and maintain software test platforms for hardware-in-the-loop testing, ensuring high reliability and performance
- Provide technical support and triage issues related to all tools DDX owns
- Occasionally contribute to and review local and cloud developer environments
- Occasionally contribute to and review internal-facing web applications
- Oversee the entirety of your features, including component design, implementation, automated testing, rollout, and maintenance
- Hold yourself and your teammates accountable to the high standards of engineering that enable Square to safely process billions of dollars in payments and protect sensitive customer data
- Work closely with other engineers, technicians, and product managers to develop excellent product experiences
Qualifications
- 5+ years of relevant software development experience (or additional academic experience)
- Proficiency in Python, as it will be the primary language used
- The ability and passion to discover and drive projects that increase developer velocity
- Strong ability to collaborate within the team and with adjacent teams
- A passion for building and shipping internal tools and products and working directly with internal customers to rapidly improve their development experience
Even better:
- Experience with Android Open Source Project (AOSP) development and communication protocols
- Experience with shipping software for Linux and MacOS (arm, x86)
- Knowledge of React, Web Assembly, and JavaScript/TypeScript
- Experience with cloud technologies like Terraform, Docker, and AWS (especially EC2)
- Familiarity with Jenkins, or another CI/CD platform
- A wide range of software development experience, including web applications, command-line tooling, data visualization, automated testing, configuration management and continuous integration & continuous delivery