Role Purpose: At Boku we are looking to develop a new product that enables partner marketing opportunities with a 3rd party mobile app. A 3rd party should be able to leverage our SDK to instantiate a WebView inside their app. The WebView will house a webpage that will display marketing offers managed by Boku and our partners. We are looking for a Backend Developer who can develop, enhance and maintain our backend set of services - facade layers, Offer Management System, simulator services, etc. This developer will help with the design and development of APIs that the frontend will integrate with.
Key Responsibilities:
Develop integrations with third-party web services.
Design and build layered, component-based, service-oriented architectures.
Participate in all phases of the software development lifecycle, from design and development to testing and deployment.
Lead medium to large projects or POCs from inception to successful implementation.
Explore and apply diverse approaches to solve complex technical challenges.
Utilize agile methodologies to ensure efficient project delivery and iteration.
Collaborate with a team of skilled engineers to achieve project goals.
Design and implement new features while enhancing existing applications.
Provide support for troubleshooting and resolving production issues.
Measures of Success
Design and complete small-to-medium sized tasks - Capable of executing small-to-medium tasks efficiently and without difficulty.
Collaborate with other engineers and stakeholders - Work closely with fellow engineers and key stakeholders to ensure alignment, share insights, and drive successful project outcomes.
Self-driven - Proactively take initiative and manage tasks independently, demonstrating accountability and a strong ability to work without supervision.
Effective communication - Communicates effectively with other teams while working on cross functional projects; may need help/guidance from their supervisor figuring out who to talk to or what to say.
Identify technical and process gaps - Proactively identifies technical and process gaps and can communicate within their teams and with managers.
Key Skills and Competencies
Proficient in Java/J2EE as the primary language for software development.
Hands-on experience with microservice architecture.
Strong background in building and working with REST APIs.
Experience integrating third-party web services using technologies such as REST and SOAP.
Expertise in Spring MVC and Guice for enterprise integration, including implementing design patterns like dependency injection and inversion of control.
Familiarity with messaging queues, particularly JMS, Active MQ, or WebSphere.
Experience with distributed and application caching systems.
Experience working with Agile methodologies for software development.
Proficient in JPA, Hibernate, MySQL, JUnit, TestNG, and Maven.
Basic knowledge of Linux fundamentals.
Preferred: Experience with cloud platforms and technologies, such as AWS, Docker, Kubernetes, etc.
Preferred: Prior experience working for a US-based company, or exposure to collaborating with US-based teams.
Qualifications
Bachelor s degree or equivalent in Computer Science, Engineering, Information Technology, or related field.
5+ years of experience in a Software Engineering role.