Software Engineer, Cloud Infrastructure
- Full-time
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. 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
As a software engineer on the Infrastructure Services team you’ll be building the API and management features that make obtaining and managing the computers to run software at Square a simple and straightforward process. We believe that reliable infrastructure and tooling has a tangible impact on overall productivity and profitability. You’ll use your considerable skills in software development to make sure our ability to deliver robust infrastructure, from bare metal machines to cloud-based virtual machines, can be done in a highly robust and reliable manner.
You should feel at home working in and around Linux, and understand the subtle differences between managing bare metal and cloud based systems at large scales through software automation. You’ll be working closely with Square’s deployment automation and data platform teams to ensure computational resources can be managed efficiently and effectively. You love building new systems from the ground up as much as you love tweaking existing systems to meet customers' changing needs.
You Will:
Communicate with engineering teams to assess API needs and feature prioritization
Design, develop, and deploy software solutions that manage the lifecycle of machines in our data centers
Design and develop enhancements to host lifecycle management systems that extend our data center reach to cloud-based hosted solutions
Contribute to monitoring, stability, and security of existing tools
Participate in a team on-call rotation
Communicate technical designs in writing and in person to multiple technical audiences
Produce operating system environments for Square's cloud based systems
Qualifications
Bachelor’s degree in Computer Science or equivalent practical experience
Familiarity with the Ruby programming language and the Ruby on Rails web application framework
Familiarity or an interest in learning the ins and outs of the Linux operating system
Preferable experience managing large-scale cloud and bare metal data centers using software automation
Build a deep understanding of the Linux operating system and how to automate the lifecycle of Linux-based systems at a large scale
Help define the future of immutable operating system operations at Square
Design the software-first approach to scaling data centers as Square continues to push into more markets around the world
Act as a strength multiplier for software deployment and scaling efforts by product engineering
Provide software development review and mentoring to multi-disciplinary engineering teams
Contribute to open source software projects
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.