Senior Software Engineer - Java & System Integration
We are looking for a hands-on Senior Software Engineer to design, develop, enhance, and integrate software solutions across Neurogine's products and customer projects. You will work on backend services, APIs, business functionality, and system integrations for financial technology and enterprise applications. Assignments may include product development, customer implementations, platform enhancements, and ongoing maintenance, depending on project needs and your expertise. You will take ownership of assigned features and integrations from technical analysis through development, testing, deployment, and post-release support. You will collaborate with internal developers, product and project teams, and customer technical teams to deliver secure, reliable, and maintainable software. This is primarily a hands-on development role. It also includes code reviews, mentoring, and technical ownership of assigned modules or project workstreams. Formal team-management responsibilities are not part of this position unless separately agreed.
Key responsibilities
- Develop and enhance software: Build and maintain Java/Spring Boot applications, backend services, REST APIs, and business functionality across company products and projects.
- Design and implement integrations: Connect applications with customer systems and third-party services. Address data mapping, authentication, error handling, timeouts, retries, and safe handling of duplicate requests.
- Own technical delivery: Clarify requirements, contribute to solution design, estimate development work, and deliver assigned features and integrations in line with agreed architecture, coding standards, and acceptance criteria.
- Collaborate with customers and internal teams: Work with mobile, web, backend, infrastructure, security, and quality assurance teams to resolve technical dependencies and integration issues. Participate in customer technical discussions when assigned.
- Ensure quality and security: Write unit and integration tests, participate in code reviews, and support System Integration Testing (SIT), User Acceptance Testing (UAT), performance testing, and security assessments. Investigate defects and implement agreed remediation.
- Support releases and operations: Prepare application configurations, deployment instructions, and rollback procedures. Coordinate releases with the relevant teams and troubleshoot issues during testing, go-live, and post-release support.
- Provide technical guidance: Share knowledge, review implementation approaches, mentor less-experienced developers, and coordinate technical work for assigned modules or small project workstreams where appropriate.
- Maintain documentation and communicate progress: Produce useful API, integration, configuration, and support documentation. Communicate progress, dependencies, and risks early, and suggest improvements to engineering practices.
About you
- Java and Spring Boot: Strong hands-on experience developing and maintaining backend applications, with sound understanding of object-oriented design, maintainable code, automated testing, and debugging.
- API and system integration: Practical experience with REST APIs, HTTP, JSON, API authentication, and integration with external systems. Able to investigate failures across application and integration boundaries.
- Database development: Practical experience with relational databases, SQL, data modelling, and troubleshooting application data issues.
- Application security: Understanding of authentication, authorisation, HTTPS/TLS, tokens, certificates, and secure handling of credentials and sensitive data.
- Engineering tools and environments: Working knowledge of Git, Linux, Docker, Gradle or Maven, and continuous integration and delivery (CI/CD) workflows.
- Independent delivery and problem-solving: Able to turn requirements into working software, assess implementation trade-offs, diagnose issues using logs and API traces, and take responsibility for assigned deliverables.
- Communication and teamwork: Able to explain technical issues clearly, collaborate with colleagues and customer technical teams, participate constructively in code reviews, and prepare technical documentation in English.
- Preferably 4 or more years of software development experience, with evidence of independently delivering features or integrations through testing and release. A degree or diploma in Computer Science, Software Engineering, or a related field, or equivalent practical experience, is preferred.
About us
Neurogine is a company developing financial technology and enterprise applications.
Neurogine brings refreshing insight to create new paradigms in Digital Token, Fintech, mobile banking solutions and mobile Value Added Services (VAS) development based on its decades of experience in the industry.
Neurogine has an expanding presence in Middle East & South Asia, with customers spanning across these regions.
In keeping pace with the changing and diverse needs of current business environment, we are seeking individual with good attitude, commitment and self-motivated to grow with us.