Staff Software Engineer
As one of the first pioneers of earned wage access, our passion at EarnIn is building products that deliver real time financial flexibility for those with the unique needs of living paycheck to paycheck. Our community members access their earnings as they earn them, with options to spend, save, and grow their money without mandatory fees, interest rates, or credit checks. Since our founding, our app has been downloaded over 13M times and we have provided access to $15 billion in earnings.
We’re fortunate to have an incredibly experienced leadership team, combined with world-class funding partners like A16Z, Matrix Partners, DST, Ribbit Capital, and a very healthy core business with a tremendous runway. We’re growing fast and are excited to continue bringing world class talent onboard to help shape the next chapter of our growth journey.
Money Movement systems are business-critical components to EarnIn’s success. We manage systems that provide real-time and scheduled money transfers, and facilitate the ability to track outcomes, reconcile discrepancies, and react to returns, chargebacks and other events. We are looking for experienced, collaborative and resourceful senior level engineers to join our backend teams, working remotely. As a senior engineer you will work cross-functionally with various teams and contribute to the design and development of our backend services.
This is a remote position. The CA base salary range for this full-time position is CAD $200,000-300,000 + equity + benefits. Our salary ranges are determined by role, level, and location.
What You'll Do:
- Drive the design & implementation of new features - break down complex problems into their bare essentials, translate this complexity into elegant design and create high quality, maintainable code.
- Make a meaningful impact in the lives of our community members.
- Design & deliver robust microservice integrations via REST/gRPC APIs using various communication, consistency, and coordination strategies.
- Collaborate and mentor other senior engineers while providing thoughtful guidance using code, design and architecture reviews.
- Contribute to defining technical direction, planning the roadmap, escalating issues, and synthesizing feedback to ensure team success.
- Estimate and manage team project timelines and risks
- Care passionately about producing high quality designs and code
- Participate in hiring and onboarding for new team members.
- Lead cross-team engineering initiatives.
What sets us apart:
- High impact roles at a fast-moving company that’s aggressively growing our user base.
- We are a collaborative team and genuinely enjoy working with each other.
- We believe in empowering our people to be successful.
- We’re building a product that reimagines the way money moves to empower human potential.
What We're Looking For:
- Expertise in trade off analysis for distributed architectures.
- 7+ years of development experience in backend or full-stack software development
- Bachelor's, Master’s or PhD degree in computer science, computer engineering or a related technical discipline or equivalent industry experience.
- Proficient in at least one modern programming language, and the ability to understand more than one - we currently work in C# and Kotlin.
- Familiarity with clean architecture approach.
- Experience with various data storages, including relational and document databases.
- Excellent written and verbal communication skills.
- Ability to thrive in a fast-paced, dynamic, result-driven environment.
- Being self-motivated and able to work independently with minimal supervision.