As a Senior Software Engineer you will be operating on the heart of the Mambo engagement platform. The platform is used to process millions of events coming from our global user base.
You will be expected to ramp up quickly and tackle anything from bug fixing all the way through to designing and implementing new features from the ground up.
We methodical with our testing and are continuously refactoring to improve our code base. Our obsession with maintainability and quality is what has allowed us to evolve the platform at a rapid pace and respond to customer requests effectively.
As a member of this remote team you will need to be an avid self learner and a good communicator. Be prepared to have daily calls, master the use of collaboration tools and code reviews.
The responsibilities associated to this role include:
- Design and develop features, components, services and applications
- Work closely with the product owner to shape the product, proactively suggesting enhancements and recognising opportunities
- Ensure the platform is maintainable, extensible, secure, tested and performing well
- Drive continuous improvements to our approach to development, our coding standards and quality assurance processes
- Ensure the best coding practices are used and encourage refactoring where appropriate
- Mentor junior engineers, onboarding them onto our development methodology
- 5+ years Java experience working on high-grade applications
- Experience with TDD / BDD
- Deep knowledge of Clean Code, Refactoring, Domain Driven Design, CQRS and design patterns
- NoSQL Databases (MongoDB)
- Spring Framework including Core and Security
- Experience with Git, Git Flow and Pull Request Flows
- Excellent communication skills in English
- Self-driven, takes the initiative, determination, flexibility and knowledge hungry
- Experience with the following products: Git, GitHub, JIRA, Jenkins, Sonar
- Technical leadership in software teams