- Company Name
- EarnIn
- Job Title
- Senior Software Engineer
- Job Description
-
**Job Title**
Senior Software Engineer
**Role Summary**
Back‑end developer responsible for designing, implementing, and maintaining high‑performance microservices that support real‑time financial services. Leads feature development, enforces code quality, and collaborates cross‑functionally with product, data science, and design teams.
**Expectations**
- 4+ years of software engineering experience focused on backend services.
- Strong proficiency in a JVM language (Java, Kotlin, or Scala).
- Deep understanding of event‑driven architecture, message queues, and cloud‑native deployment patterns.
- Ability to translate complex requirements into scalable, maintainable solutions.
**Key Responsibilities**
- Design, code, and ship new features and APIs (REST & gRPC).
- Build and maintain automated test suites (unit, integration, functional).
- Develop and publish microservice integrations, using event streams (Kafka, SNS/SQS, Kinesis).
- Mentor peers and conduct code, design, and architecture reviews.
- Debug and resolve production incidents across distributed systems.
- Collaborate with product, data, design, and analytics teams to define requirements and deliver value.
**Required Skills**
- • JVM languages (Java, Kotlin, Scala) with Spring/Spring Boot framework.
- • SQL databases (PostgreSQL/MySQL/Oracle) and familiarity with NoSQL.
- • Cloud platforms: AWS (preferred) with experience in EC2, Lambda, RDS, SQS, SNS, Kinesis.
- • Messaging & streaming: Kafka, AWS SNS/SQS, AWS Kinesis.
- • CI/CD tools (Jenkins, GitHub Actions, GitLab CI).
- • Container orchestration (Kubernetes) and microservices architecture.
- • Automated testing (JUnit, TestNG, Mockito, integration testing).
- • Strong communication and collaboration skills.
**Required Education & Certifications**
- Bachelor’s, Master’s, or PhD in Computer Science, Computer Engineering, or related technical field, or equivalent industry experience.
- No mandatory certifications required.