As a backend software engineer on our engineering team, you'll get to lead a growing team at Credit Karma that works across various verticals (home, auto, personal loans, and credit cards). You'll impact a platform that is responsible for handling millions of members accessing their Credit Karma accounts, including registration, login, SMS 2FA, and account recovery. Further, you'll help build product experiences that guide our members through the most challenging financial decision of their lifetime: buying their dream home. From finding a realtor, understanding loan options, and applying to get pre-approved, we help our members every step of the way. There is an enormous opportunity to build things at scale, move fast, and have a high impact across many different products, including our Core product, Auto, Mortgage and Assets.
What you'll do:
Contribute to our core services and data aggregation layer; meeting our need for scale, quality, and rapid iteration
Build out high quality integrations with other internal services leveraging Credit Karma's rich financial data set
Work closely with our external partners to acquire new data to enrich our core user experience
Develop automation throughout our stack; through our build & deployment processes, testing, monitoring, data pipeline, and beyond
Work with front-end developers to complete end-to-end solutions and iterate rapidly as we experiment and learn
Willingness to learn new skills as our product and technology footprint grows
What's great about the role:
Join an engineering team that is experiencing explosive growth and we are actively growing the team to improve and expand our product portfolio
We are solving BIG problems that are fundamentally changing old industries
Opportunity to meaningfully improve the lives of our members
Fast-paced environment that operates like a 'start-up' within Credit Karma
Minimum Basic Requirements:
Experience in Scala, Java, and/or any functional language. We code primarily in Scala, so you'll be excited to either ramp or continue with such
Experience in microservices architecture, messaging patterns, and deployment models
Experience in API design and building robust and extendable client/server contracts
Preferred Qualifications:
Proficient in Scala or Java
Experience with Kafka, RabbitMQ, Amazon SQS or similar data messaging platform
Experience building highly integrated, large-scale, high-volume, and testable systems
Experience with Kubernetes and containers technologies
Ability to mentor and coach other team members
A solid foundation in OOP, design patterns, algorithms, programming languages, networking and Linux operating systems.
Expert understanding of web application internals and scalability at any tier.
Proficiency in SQL, relational database schema design and ORM technologies & concepts.
Strong understanding of deployment strategies and production infrastructure needs.
Strong communication and leadership abilities.
Experience with Agile/Scrum practices.
Bachelor's or Masters degree in Computer Science, Engineering, Computer Information Systems, Mathematics, Physics, or a related field or software development training program