Senior Software Engineer (Data), Payment Intelligence

  • San Francisco, CA
  • Full-time

Company Description

We believe the economy is better when everyone has access. When everyone has room to grow. No one should be left out because the cost is too great or the technology too complex. We started with a little white credit card reader but haven’t stopped there. 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. 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 processes billions of dollars every year ($80B last year alone). At that scale, small tweaks can lead to huge efficiency gains. Payment Intelligence makes data-driven improvements to core payment metrics such as decline rates and transaction profit. This work has direct impact on Squares profitability and financial success. This team consists of engineers and data analysts that work together closely to find and implement optimizations to our payment stack.

Hard Problems

  • Transaction Cost datastore We are building the next-generation cloud data infrastructure in order to provide a stable data foundation to do ML training and calculate transaction cost real time.

  • Dynamic routing We need to be able to route every individual payment in the most optimal fashion, depending on cost, success rates, speed, etc. This will allow us to build smart traffic shaping, e.g. to hit different pricing

You will:

  • Provide mentorship to engineers and cross-functional partners to improve engineering quality and increase team effectiveness
  • Work across the whole payment stack that consists of dozens of micro services
  • Implement new money routing and pricing features
  • Make data-driven decisions and design high volume data injection pipelines
  • Build out Squares Transaction Cost Data platform, used by the rest of the organization and a key strategic asset of Square
  • Provide curated data feeds and ML training solutions
  • Evaluate ML and cloud based platforms and services
  • Work cross-functionally with our product, business, and finance teams to develop Squares global payments strategy


You have:

  • BA/BS degree or equivalent experience in building and architecting data solutions (5+ years preferred)
  • History of leading and mentoring engineering teams to raise technical standards and achieve business goals
  • Excellent interpersonal skills that enable effective communication and collaboration with a variety of stakeholders
  • Innate curiosity and a desire to be responsible for all aspects of reliably moving billions of dollars in a small, highly focused team
  • Understanding and curiosity in creating highly available, scalable, low-latency data systems

Technologies we use:

  • Java, Python
  • Guice, Guava, Protocol Buffers, Hibernate, jOOQ, scikit-learn
  • MySQL, Redis, Kafka, Hadoop, Airflow, Vertica

Technologies we evaluate:

  • Tensorflow
  • Google Cloud Platform (BigQuery, Google Cloud Storage, DataFlow, PubSub, CloudML etc.)

Additional Information

At Square, our purpose is to empower – within and outside of our walls. In order to build the best tools for the businesses and customers we support all over the world, we have to start at home with a workforce as diverse and empowered as our sellers. To this end, we take great care to evaluate all employees and job applicants equally, based on merit, competence, and qualifications. We do not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, disability status, or any other characteristic protected by law. We encourage candidates from all backgrounds to apply and always consider qualified applicants with arrest and conviction records, in accordance with the San Francisco Fair Chance Ordinance. Applicants in need of special assistance or accommodation during the interview process or in accessing our website may contact us by sending an email to assistance(at) We will treat your request as confidentially as possible. In your email, please include your name and preferred method of contact, and we will respond as soon as possible.