We are seeking a seasoned Backend Engineer to join our team. This role is remote, allowing you to work from anywhere in the world.
The ideal candidate will be responsible for managing various areas of our backend platform, including API integrations with 3rd-party vendors and partners.
As a Backend Engineer, you will play a central role in making it easier for users to access our services and build products that help users maintain positive cash availability.
Key Responsibilities:
* Translate product requirements into robust technical solutions, recommend alternative approaches and lead engineering efforts to meet ambitious targets
* Design and implement reliable systems and applications in the context of a fully distributed micro-services architecture
* Built and maintain integrations with 3rd-party vendors and partners
* Design and implement highly available RESTful APIs supporting user-facing web and mobile applications
* Focus on creating reusable code and libraries that can be shared across teams, fostering collaboration and ensuring scalability for future projects
* Enforce observability best practices, leveraging tools like logging, metrics and alerting systems
* Create and maintain detailed technical documentation for all solutions, including architecture designs, APIs, workflows, and system configurations
* Continuously monitor Rain systems and applications for opportunities to maximize performance and scalability
* Effective cross-team communication and collaboration to align priorities, clarify requirements, identify dependencies, and ensure seamless coordination throughout the software development lifecycle
Requirements:
* 5+ years of Software Development experience
* A Bachelor's degree in Computer Science or equivalent combination of technical education and work experience
* Proficient knowledge of back-end programming languages such as Go / Golang, Java, Python and C++
* Strong expertise in designing and developing RESTful APIs
* Experience with both SQL and NoSQL database technologies and strong understanding of database concepts and internals, including data model design and optimization principles
* Experience at building reliable and scalable user-facing applications
* Proficiency in designing and implementing scalable distributed systems and microservices architectures, with a strong ability to meet performance and scalability requirements
* Excellent collaboration skills, with the capacity to work effectively with cross-functional teams, present ideas, and communicate technical concepts clearly
* Keep up to date with technologies - AWS/Azure/GCP, serverless, Docker, Kubernetes, ECS among others
* Strong ability to take ownership of projects, driving initiatives from concept to completion with minimal supervision, while proactively identifying challenges and solutions
* Experience working with agile methodologies, including Scrum and Kanban, to deliver high-quality results in iterative cycles
* Proficiency in message queuing systems such as Kafka(preferred)/RabbitMQ/Flink
* Effective release management experience for ensuring zero downtime and experience with CI/CD frameworks such as Gitlab CI and Github actions