SpendLabs is looking for Senior Engineering Developers. The individual would be working closely with SpendLabs’ senior leadership role and will play a pivotal role in leading the engineering and development effort to support the organization’s Product Roadmap, Platform Delivery, Client Success and Strategic Growth. Individual is required to have solid programming skills in Java or Scala with Kafka expertise. As a Senior Developer, the individual is responsible for development, support, maintenance and implementation of multiple DDD based micro-services. Should have good experience in application of standard software development principles. Should be able to work as an independent team member, capable of applying judgment to plan and execute assigned tasks and also lead/ problem-solve/ respond to technical queries / requests from team members and customers. SpendLabs team is distributed and growing – so individual should show good teamwork and ability to work with individuals from across the offices. Also this is a senior role and is expected to coach, guide and mentor junior members in the team.

Essential Responsibilities:

  • Design and Develop Rest and messaging based software infrastructure and build back-end systems and APIs
  • Design and develop low latency/high throughput server infrastructure components to handle large volume of transactions
  • Analyze requirements, design and develop code, unit test code and test tools
  • Present and defend architectural, design, and technical choices to internal and external audiences.
  • Comfortable with collaboration, open communication and reaching across dev, qa, ops and other cross functional teams
  • Extremely comfortable in communicating well via UML and wikis and git commit comments and well written code

Qualifications/Requirements:

  • 7+ years’ work experience or equivalent programming
  • 7+ years’ experience with high-scale, high performance and high availability server development
  • At least 2 years experience building out scalable and robust back-end systems in Scala/Akka
  • Strong knowledge of Scala development stack, including concurrency and core Akka technologies. (Lagom Experience a plus)
  • Experience with microservice-oriented, distributed systems in the cloud using open source frameworks (ex. Kafka, Avro, Akka, Storm, Kubernetes, Docker, Pulsar etc.)
  • Development expertise in Java, Scala, Akka,  developing multithreaded server side services
  • Solid understanding of algorithm complexity, parallel/distributed systems, advanced data structures, computer networking and operating systems
  • Development expertise in REST/SOAP/JSON API
  • Solid working knowledge of NoSQL – (eg. Elastic Search + Time Series Databases)
  • Prior experience working with Agile/Scrum methodologies
  • Start-up environment experience
  • Bachelor’s degree in computer science or related field from a tier-1 college. Master’s preferred

Skillset/ Expertise

Skills sets with expertise level:

  • Java/Scala – Expert
  • Git – Expert
  • Python – Intermediate
  • Bash/Linux – Intermediate
  • Kafka/Pulsar – Intermediate
  • Protobuf – Intermediate
  • Akka – Knowledgeable
  • DDD Based Microservices – Knowledgeable