# Senior Software Engineer, Full Stack
**Company:** [Plaid](https://scaleengineer.com/companies/plaid)
As a Senior Full Stack Engineer at Plaid, you'll design and build scalable backend services and intuitive frontend experiences that empower millions of users to connect their finances securely. This role requires 5+ years of production software engineering experience with expertise in microservices architecture, relational databases, and modern JavaScript frameworks, while collaborating cross-functionally with product, design, and engineering teams to deliver end-to-end financial technology solutions.
**Role:** Full Stack Engineer
**Seniority:** Senior
**Locations:** Seattle Office
**Salary:** 190800–262800 USD
[Apply](https://jobs.ashbyhq.com/plaid/d7cfe5b0-211a-41aa-a3c8-ea2844799a68)
Canonical: https://scaleengineer.com/jobs/plaid/senior-software-engineer-full-stack
---
## Responsibilities

- Full Stack System Development: Design, develop, and maintain scalable backend services and APIs using microservices architecture, while building intuitive, high-performance frontend applications. Balance responsibilities across distributed systems, database optimization, and responsive user interface development to ensure cohesive end-to-end product experiences.
- Cross-Functional Collaboration: Partner closely with product managers, UX/UI designers, and engineering teams to translate business requirements into technical specifications. Actively participate in requirements definition, feature planning, and product discovery sessions to solve real customer problems in the financial technology space.
- Code Quality and Testing Standards: Write clean, maintainable, and well-tested code following SOLID principles and industry best practices. Conduct thorough code reviews, participate in technical design discussions, and establish engineering standards that improve system reliability and developer productivity across the team.
- Production Operations and Debugging: Build and maintain comprehensive automated test suites, implement monitoring and observability for production systems, and troubleshoot complex issues in high-scale production environments. Ensure rapid incident response and continuous performance optimization across the Plaid network serving millions of users.
- Architectural Decision-Making: Engage in hands-on architectural design to ensure backend and frontend systems are reliable, secure, and scalable. Contribute to technology selection, system design patterns, and infrastructure decisions that support Plaid's mission to connect 12,000+ financial institutions globally.
- Team Leadership and Mentorship: Support strong engineering culture through thoughtful mentorship of junior and mid-level engineers, constructive code reviews, and shared ownership of technical standards. Lead by example in demonstrating ownership, drive technical discussions, and accelerate the growth of engineering talent across the organization.

## Requirements

### education

- {"name":"Bachelor's Degree in Computer Science or Related Field","description":"Preferred degree in Computer Science, Computer Engineering, Mathematics, Physics, or equivalent demonstrable engineering expertise. Strong foundation in data structures, algorithms, and computer systems concepts."}
- {"name":"Continuous Learning and Technical Growth","description":"Demonstrated commitment to staying current with evolving technologies, architectural patterns, and industry best practices. Self-directed learning in modern development frameworks, cloud platforms, and fintech-specific technologies."}

### technical

- {"name":"Backend Service Development","description":"Proven expertise building production-grade backend services using relational databases (MySQL, PostgreSQL) with hands-on experience designing microservices and service-oriented architectures. Demonstrate mastery of API design, database optimization, and distributed system concepts."}
- {"name":"Frontend Framework Proficiency","description":"Strong working knowledge of HTML, CSS, and JavaScript with demonstrated comfort building user-facing experiences using modern frontend frameworks and libraries. Experience shipping consumer-facing applications with attention to performance, accessibility, and user experience best practices."}
- {"name":"System Design and Architecture","description":"Solid understanding of system design principles including scalability, reliability, security, and maintainability. Ability to make architectural trade-offs and design decisions that balance technical excellence with business requirements in fast-growing fintech environments."}
- {"name":"Testing and Code Quality","description":"Strong testing skills across unit, integration, and end-to-end testing frameworks. Experience implementing automated testing strategies, test-driven development (TDD), and maintaining high code coverage to ensure reliability of production systems."}
- {"name":"Security and Compliance","description":"Understanding of secure coding practices, authentication protocols, data encryption, and compliance requirements specific to financial services. Experience building systems that handle sensitive financial data with appropriate security measures and regulatory considerations."}

### experience

- {"name":"Production Software Engineering (5+ years)","description":"Minimum 5 years of professional software engineering experience with a demonstrated track record of shipping production systems or features that reached millions of users. Experience across multiple product development cycles from conception through launch and maintenance."}
- {"name":"Full Stack Development","description":"Hands-on experience working across frontend and backend technologies, comfortable switching between layers of the technology stack. Proven ability to understand system tradeoffs and build cohesive solutions that span multiple technical domains."}
- {"name":"Cross-Functional Collaboration","description":"Proven ability to collaborate effectively with product managers, designers, and other engineering partners. Experience in fast-paced, iterative development environments where communication and alignment are critical to success."}
- {"name":"Mentorship and Technical Leadership","description":"Experience mentoring or supporting the growth of other engineers through code reviews, technical guidance, or informal leadership. Demonstrated commitment to raising team technical standards and developing junior talent."}
- {"name":"End-to-End Solutions","description":"Comfortable working across product, operations, and data teams to deliver comprehensive end-to-end solutions. Experience bridging technical and business considerations to ensure features meet user needs and business objectives."}

## Skills

### required

- {"name":"JavaScript/TypeScript","description":"Advanced proficiency in JavaScript with strong TypeScript capabilities. Experience building type-safe frontend applications and understanding of async programming, functional programming concepts, and modern ES standards."}
- {"name":"Backend Language (Python, Java, Go, or Node.js)","description":"Fluent in at least one backend programming language commonly used in microservices environments. Ability to write efficient, maintainable backend code with strong understanding of concurrency, performance optimization, and code organization."}
- {"name":"React or Modern Frontend Framework","description":"Hands-on experience with React, Vue, Angular, or equivalent modern frontend framework. Proficiency in component architecture, state management, and building responsive, accessible user interfaces."}
- {"name":"SQL and Relational Databases","description":"Strong SQL expertise with practical experience optimizing queries and designing efficient database schemas. Hands-on work with MySQL, PostgreSQL, or similar relational database systems in production environments."}
- {"name":"REST API Design and Development","description":"Expertise in designing and implementing RESTful APIs with proper HTTP semantics, versioning strategies, and documentation. Understanding of authentication, rate limiting, and API security best practices."}
- {"name":"Version Control and Git","description":"Advanced Git proficiency including branching strategies, merge conflict resolution, and collaborative workflows. Experience with GitHub, GitLab, or similar platforms in team environments."}
- {"name":"Testing Frameworks and Practices","description":"Experience with testing frameworks such as Jest, Mocha, JUnit, or pytest. Strong understanding of testing strategies including unit testing, integration testing, and test-driven development approaches."}
- {"name":"System Design and Scalability","description":"Demonstrated ability to design systems that scale horizontally and vertically. Understanding of caching strategies, asynchronous processing, load balancing, and optimization techniques for high-traffic applications."}

### preferred

- {"name":"Fintech or Financial Services Experience","description":"Prior experience in financial technology, banking, or payments domains. Familiarity with financial data connectors, API aggregation platforms, or open banking standards would provide valuable context for Plaid's mission."}
- {"name":"Microservices and Distributed Systems","description":"Hands-on experience architecting and maintaining microservices-based systems. Knowledge of containerization with Docker, orchestration platforms like Kubernetes, and distributed system patterns including service discovery and inter-service communication."}
- {"name":"Cloud Platform Expertise","description":"Experience deploying and operating applications on AWS, Google Cloud Platform, or Azure. Familiarity with serverless computing, managed databases, and cloud-native architectural patterns."}
- {"name":"Security Implementation","description":"Practical experience implementing authentication mechanisms (OAuth, JWT), data encryption, and security best practices in production applications. Understanding of OWASP principles and secure coding patterns."}
- {"name":"DevOps and CI/CD","description":"Experience with continuous integration and continuous deployment pipelines using tools like Jenkins, GitLab CI, or GitHub Actions. Familiarity with infrastructure-as-code practices and monitoring solutions."}
- {"name":"Performance Optimization","description":"Track record of optimizing application performance through profiling, database optimization, and frontend performance tuning. Experience reducing latency and improving throughput in production systems."}
- {"name":"Open Banking and Data Standards","description":"Knowledge of open banking frameworks, financial data standards, or APIs such as PSD2, FHIR, or industry-specific integration patterns. Understanding of data privacy regulations like GDPR and compliance requirements in financial services."}

## Tech stack

### tools

- {"name":"Git and GitHub","description":"Version control and collaborative development platform. Essential for managing code repositories and coordinating across distributed engineering teams."}
- {"name":"Docker","description":"Container platform for packaging applications and ensuring consistency across development, testing, and production environments."}
- {"name":"Kubernetes","description":"Container orchestration platform for managing containerized microservices at scale. Enables efficient deployment and resource management."}
- {"name":"Jenkins or GitLab CI","description":"Continuous integration and continuous deployment platforms for automating testing, building, and deployment workflows."}
- {"name":"Datadog or New Relic","description":"Application performance monitoring and observability platforms for tracking system health, debugging issues, and optimizing performance."}
- {"name":"Jira","description":"Project management and issue tracking tool for coordinating feature development, bug fixes, and sprint planning across engineering teams."}

### others

- {"name":"RESTful API Architecture","description":"Architectural approach for building scalable web services with HTTP-based communication. Standard pattern for integrating financial data connectors and banking APIs."}
- {"name":"OAuth 2.0 and JWT Authentication","description":"Industry-standard protocols for secure authentication and authorization. Critical for protecting sensitive financial data and user accounts in fintech applications."}
- {"name":"Microservices Architecture","description":"Distributed systems approach to building applications as collections of loosely coupled, independently deployable services. Enables scalability and organizational flexibility."}
- {"name":"GraphQL","description":"Query language and runtime for APIs offering flexible data fetching capabilities. Alternative to REST for certain application requirements in modern fintech platforms."}
- {"name":"Message Queues (RabbitMQ, Apache Kafka)","description":"Asynchronous messaging systems for decoupling services and handling high-volume data streams. Essential for processing financial transactions and connecting bank accounts reliably."}

### databases

- {"name":"MySQL","description":"Relational database system commonly used in fintech applications. Supports complex queries, transactions, and ACID compliance critical for financial data."}
- {"name":"PostgreSQL","description":"Advanced relational database with strong support for complex queries and data integrity. Increasingly used in modern microservices architectures for reliability and feature richness."}
- {"name":"Redis","description":"In-memory caching and data store for improving application performance and handling real-time data requirements in high-scale systems."}
- {"name":"MongoDB","description":"Document-oriented database for flexible schema designs and horizontal scalability in certain microservices patterns."}

### languages

- {"name":"JavaScript/TypeScript","description":"Primary frontend language with TypeScript for type safety. Used across modern React applications and frontend development at Plaid."}
- {"name":"Python","description":"Common backend language for building microservices and data processing pipelines. Used for rapid development and strong ecosystem support in financial applications."}
- {"name":"Java","description":"Enterprise-grade backend language suitable for high-scale distributed systems. Often used for core infrastructure and services at financial technology companies."}
- {"name":"Go","description":"Modern systems programming language used for building efficient microservices and backend infrastructure with excellent concurrency support."}

### frameworks

- {"name":"React","description":"Modern frontend framework for building dynamic, component-based user interfaces. Widely adopted for building scalable web applications with strong ecosystem and community support."}
- {"name":"Node.js","description":"JavaScript runtime for building backend services and APIs. Enables full-stack JavaScript development and real-time data processing capabilities."}
- {"name":"Express.js","description":"Minimal Node.js web framework for building RESTful APIs and backend services. Lightweight and flexible for microservices architecture."}
- {"name":"Spring Boot","description":"Java framework for rapidly building production-grade backend applications and microservices with integrated testing and deployment features."}

## Benefits

### benefits

- {"name":"Comprehensive Health Coverage","description":"Medical, dental, and vision insurance plans designed to support employee wellness. Coverage includes preventive care, specialist services, and vision correction options."}
- {"name":"401(k) Retirement Plan","description":"Employer-sponsored retirement savings plan with company matching contributions. Financial security planning tools and educational resources for long-term wealth building."}
- {"name":"Equity and Stock Options","description":"Participation in company equity through stock options or restricted stock units (RSUs). Aligns employee interests with company success and provides ownership stake in Plaid's mission."}
- {"name":"Performance-Based Compensation","description":"Potential additional compensation through bonuses and commission structures dependent on role performance and company metrics. Rewards individual and team contributions to business outcomes."}
- {"name":"Professional Development","description":"Learning and development opportunities including conference attendance, technical training, and career advancement programs. Support for staying current with evolving technologies and industry trends."}
- {"name":"Inclusive Work Environment","description":"Commitment to diversity, equity, and inclusion with accommodations for candidates and employees with disabilities. Supportive culture for underrepresented groups in technology."}
- {"name":"Accessibility Accommodations","description":"Proactive support for candidates and employees with disabilities throughout recruitment and employment. Dedicated accommodations contact at accommodations@plaid.com for assistance."}

## Compensation

- **max:** 250000
- **min:** 185000
- **currency:** USD
- **stockOptions:** true

## Interview process

### steps

## Full description
We believe that the way people interact with their finances will drastically improve in the next few years. We’re dedicated to empowering this transformation by building the tools and experiences that thousands of developers use to create their own products. Plaid powers the tools millions of people rely on to live a healthier financial life. We work with thousands of companies like Venmo, SoFi, several of the Fortune 500, and many of the largest banks to make it easy for people to connect their financial accounts to the apps and services they want to use. Plaid’s network covers 12,000 financial institutions across the US, Canada, UK and Europe. Founded in 2013, the company is headquartered in San Francisco with offices in New York, Seattle, Washington D.C., Raleigh, London, and Amsterdam.

Plaid’s mission is to unlock financial freedom for everyone by making money movement and access to financial data simple and secure. As a Fullstack Software Engineer, you will design and build the systems and experiences that power how millions of people connect to their finances.

You will work across the stack, building scalable backend services and APIs while also crafting intuitive, high-quality frontend experiences that bring those systems to life. This role is ideal for engineers who enjoy switching between backend problem-solving and frontend user experience work, and who are excited to grow their impact across both.

You will collaborate closely with product managers, designers, and other engineers to ship products that are reliable, secure, and delightful to use. At Plaid, engineers take ownership early, contribute to architectural decisions, and see their work reach millions of users.

**Responsibilities:** 

* Build across the stack. Design, develop, and maintain scalable backend services and APIs, as well as intuitive, high-quality frontend applications that bring those systems to life.
* Collaborate cross-functionally. Partner closely with product managers and designers to define requirements and deliver features that solve real customer problems.
* Maintain high code quality. Write clean, maintainable, and well-tested code, and participate in code reviews and technical design discussions.
* Test and debug. Build automated tests, monitor system performance, and troubleshoot issues in production environments.
* Contribute to system design. Engage in hands-on coding and architectural decisions to ensure reliability, security, and scalability.
* Grow the team. Support a strong engineering culture through mentorship, thoughtful reviews, and shared ownership of technical standards.

**Qualifications:**

* 5+ years of software engineering experience with a track record of shipping production systems or features
* Experience building backend services using relational databases such as MySQL, and working with microservices or service-oriented architectures
* Strong working knowledge of HTML, CSS, JavaScript, and modern frontend frameworks or libraries, with comfort building user-facing experiences
* Solid system design, coding, and testing skills across both frontend and backend
* Proven ability to collaborate effectively with product, design, and other engineering partners
* Experience mentoring or supporting the growth of other engineers through reviews, guidance, or leadership
* Comfortable working across product, operations, and data teams to deliver end-to-end solutions

Our mission at Plaid is to unlock financial freedom for everyone. To support that mission, we seek to build a diverse team of driven individuals who care deeply about making the financial ecosystem more equitable. We recognize that strong qualifications can come from both prior work experiences and lived experiences. We encourage you to apply to a role even if your experience doesn't fully match the job description. We are always looking for team members that will bring something unique to Plaid!

Plaid is proud to be an equal opportunity employer and values diversity at our company. We do not discriminate based on race, color, national origin, ethnicity, religion or religious belief, sex (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender, gender identity, gender expression, transgender status, sexual stereotypes, age, military or veteran status, disability, or other applicable legally protected characteristics. We also consider qualified applicants with criminal histories, consistent with applicable federal, state, and local laws. Plaid is committed to providing reasonable accommodations for candidates with disabilities in our recruiting process. If you need any assistance with your application or interviews due to a disability, please let us know at accommodations@plaid.com.

Please review our Candidate Privacy Notice [here](https://plaid.com/legal/#candidate-privacy-notice).  

Additional compensation in the form(s) of equity and/or commission are dependent on the position offered. Plaid provides a comprehensive benefit plan, including medical, dental, vision, and 401(k). Pay is based on factors such as (but not limited to) scope and responsibilities of the position, candidate's work experience and skillset, and location. Pay and benefits are subject to change at any time, consistent with the terms of any applicable compensation or benefit plans.
