Senior Software Engineer, Product (backend)
Headquarters: New York, NY
Must be located: U.S.A.
View all Petal jobs →
In this role, you will own and help scale the Python web applications that make the Petal product function. The spans from product sign-up—collecting the various and growing number of data points from the customer we need to make our loan decisions—to our core product feature set—the most transparent, customer-centric credit tool on the market. Primarily, this will consistent of evolving our Flask API server to be more flexible, extensible, and performant; spinning up new microservices and internal tools that help the company move faster; and scaling our data models (Postgres, Redis, queues, and streams). This is also a leadership role; you will provide technical design guidance and be instrumental in scaling how our humans interoperate as we double and triple our engineering team over the coming year.
The engineering team is a highly talented group, composed of ~25 technologists across the stack, from data, platform, infrastructure, machine learning, to the group of product engineers you'll be most closely working alongside. We come from Airbnb, Amazon, Datadog, SpaceX, and Square, and know what it takes to create a world-class team. You'll collaborate with a first-string product management and design team, and our co-founders who place a special emphasis on reliability and product quality—your work.
Here is a closer look at our tech team: https://www.petalcard.com/build and here is our tech stack: https://stackshare.io/petal
- Evolve our API and Python web application server, ensuring resiliency and extensible API design
- Be the foremost expert on the product engineer team on cloud infrastructure (AWS)
- Scale our user/transactional data model in PostgresSQL
- Build internal automation tools that help us move faster and alleviate bottlenecks to scale
- Translate between business and technical concepts with ease; make a business case for engineering work, and understand what moves the needle for the company
- Grow the team by helping to hire more high-performing engineers
- Technical aptitude: You know at least one server-side language deeply. You understand what makes a well-designed API and database schema. You have well-founded opinions on how to keep code organized and maintainable.
- Experience at scale: You've shipped applications to customers at scale, and you iterate based on real user behavior. You've dealt with performance bottlenecks, and deployed optimizations based on measurement. You have strong heuristics on system design for managing different degrees of complexity and scope.
- Collaboration: You empathize and effectively collaborate with stakeholders in marketing, design, and product. You know how to communicate the value of technical excellence to non-technical teammates.
- Communication: You’re a great listener, but are willing to speak up when you see something that needs to be fixed. You ask questions when something isn’t clear.
- Experience working with AWS cloud infrastructure, especially through periods of rapid usage growth and spikes in traffic
- Knowledge of GraphQL API design
- Passion for automated testing (unit and E2E)
- Experience with Golang
- A bias for functional programming techniques
Apply for this position
Send a resume to firstname.lastname@example.org