Senior Software Engineer-Backend

    • Intuit
  • Mountain View, CA
  • Posted 18 days ago | Updated 7 hours ago

Overview

On Site
Full Time

Skills

Test-driven development
Financial technology
API management
Computer science
Problem solving
Unit testing
Design patterns
Data structure
Use cases
Design review
Software development
IT management
Product management
Extreme programming
QuickBooks
MailChimp
RESTful
GraphQL
API
Leadership
Hosting
Routers
Java
Analytical skill
Communication
Microservices
Cloud computing
Amazon Web Services
Kubernetes
Docker
Algorithms
Adaptability
Documentation
Mentorship
Collaboration
Prototyping
Design
Testing
Quality assurance
Agile
Scrum

Job Details

Company Overview

Intuit is the global financial technology platform that powers prosperity for the people and communities we serve. With approximately 100 million customers worldwide using products such as TurboTax, Credit Karma, QuickBooks, and Mailchimp, we believe that everyone should have the opportunity to prosper. We never stop working to find new, innovative ways to make that possible.

Job Overview

Come join the API Management Platform Team as a Senior Software Engineer.

API Management Platform team build end to end API Management Platform for Restful, GraphQL and Async APIs. This enables API Producers to produce world class APIs as well as enables API consumers to discover and consume these APIs with ease.

In addition to above, the team also builds and operates GraphQLAPIs in leading Intuit Products such as TurboTax and Quickbooks, by hosting and operating a world class GraphQL Router. This is a high volume and mission critical system.

As a Senior Software Engineer on this team, you will be working with a team of very talented engineers and Architects to take the platform to the next level.

Qualifications

  • BS/MS in Computer Science or related area or equivalent experience
  • 4+ years of professional experience delivering enterprise class applications
  • 3+ years of experience in building Highly Scalable Distributed Solutions using Java.
  • Team player possessing strong analytical, problem solving and communication skills
  • Strong hands on experience of developing highly scalable Microservices (Rest and/or GraphQL)
  • Experience in designing and developing distributed scalable and highly reliable applications in Cloud.
  • Experience with AWS or some other cloud provider..
  • Deep understanding of Kubernetes & Docker
  • Expertise with unit testing & Test Driven Development (TDD).
  • A passion for well written code, test-driven development, and engineering best practices.
  • A win-together mindset. You cherish opportunities to help your customers and teammates to be successful.
  • Good communication skills and the ability to explain complex technical issues to both technical and non-technical audiences.
  • Proficient in programming, design patterns, data structures, algorithms, troubleshooting.
  • Strong hands-on experience of operating and supporting applications/Services in Production

Leadership Competencies:

  • Ability to work effectively in a fast paced, complex technical environment with high adaptability and flexibility
  • "Self-starter" attitude and the ability to make decisions independently
  • Develops talent and skills on the team through reviews, documenting and sharing standards, industry best practices and knowledge of Intuit capabilities.
  • Mentor and provide technical guidance to junior engineers, fostering their growth and development.


Responsibilities

  • Collaborate with cross-functional teams to define technical requirements, use cases and develop prototypes, or proof of concepts.
  • Independently design the components that they are responsible for a given deliverable with minimal guidance.
  • Actively seeks and incorporates design review feedback, also actively reviews design of peers and SWEs.
  • Conduct code reviews, promote code quality, and ensure adherence to coding standards
  • Identify and address performance bottlenecks and optimize architecture & code.
  • Provide recommendations and best practices for Software Development
  • Actively stay abreast of industry best practices, share learnings, and experiment and apply cutting edge technologies.
  • Act in a technical leadership capacity: Mentoring junior engineers, new team members, and applying technical expertise to challenging programming and design problems
  • Roughly 90% hands-on coding and code reviews.
  • Resolve defects/bugs during testing, pre-production, production, and post-release patches
  • Work cross-functionally with various Intuit teams: product management, QA/QE, various product lines, or business units to drive forward results
  • Experience with Agile Development, SCRUM, or Extreme Programming methodologies