Software Engineer II
Software Engineer II Backend
Why This Role Matters
Finexus builds technology that supports banking and payment services in Malaysia. As a Software Engineer II, you will be one of the engineers who keeps the Kayaaku platform stable, secure, and ready to grow. The systems you build and support move real payments for real customers, so the quality of your code and the reliability of what you ship matter every day.
About the Role
You will design, build, test, and support backend systems across the Kayaaku platform, including services, APIs, integrations, and data layers. You will work with senior engineers and cross-functional teams, taking ownership of assigned modules and features from requirement to production. We are looking for an engineer with strong programming fundamentals and real technical depth: someone who can learn quickly from code they did not write, deliver independently, and seek guidance when it matters.
Mission and Expected Outcomes
Success in this role is measured by what you deliver and how reliably it runs, not by the tools you list. A Software Engineer II at Finexus is expected to achieve the following:
Deliver assigned modules and features to agreed requirements and technical designs, with minimal rework after review and testing.
Write clean, secure, and well-tested Java code that other engineers can read, extend, and maintain without needing you to explain it.
Become productive in unfamiliar parts of our codebase quickly, tracing existing logic and making changes safely without breaking adjacent behaviour.
Resolve production issues by finding the true root cause rather than patching symptoms, so that the same issue does not return.
Make your changes release-ready: tested, documented, and deployable through our CI and CD pipelines without avoidable incidents.
Keep the backend services, databases, and integrations you own dependable, with failures that are detected, understood, and recoverable.
Raise technical and delivery risks early, with a clear description of the problem and options, so that senior engineers and the team lead can act in time.
Leave systems better than you found them through improvements to performance, reliability, test coverage, or maintainability in the areas you own.
Build trust with Product, Project, Business, Operations, and Engineering colleagues by communicating clearly and doing what you committed to do.
Key Responsibilities
Design, develop, test, implement, and maintain backend services, APIs, integration services, and system features.
Take assigned modules and features from requirement to production, meeting agreed timelines and quality standards.
Contribute to solution design and architecture discussions, with input grounded in implementation experience.
Review code, respond constructively to review feedback, and help keep coding and engineering practices consistent across the team.
Support production systems, including participation in the team’s on-call rotation, by troubleshooting issues, identifying root causes, and implementing appropriate fixes.
Work with Product, Project, Business, and other technical teams to clarify requirements and turn them into workable technical solutions.
Prepare and maintain technical documentation for assigned systems, integrations, and features.
Identify technical or delivery risks within assigned work and escalate them to senior engineers or the team lead when required.
Technical Scope
Programming foundation: Java, with strong command of object-oriented design, data structures and algorithms, exception handling, and concurrency.
Backend and integration: web services and APIs, including SOAP, XML, and WSDL; batch jobs, schedulers, ETL flows, and common integration patterns.
Messaging: IBM MQ and ActiveMQ, as one part of the integration landscape.
Databases: Oracle, MariaDB, or equivalent relational databases, including SQL, stored procedures, and performance tuning.
CI and CD: automated pipelines, production releases, and deployment approaches such as blue-green, rolling, and canary deployments.
Security: secure coding, authentication, authorisation, and controls suitable for banking, payment, and regulated systems.
Qualifications
Qualifications Basic Degree or Diploma
Bachelor’s Degree in Computer Science, Software Engineering, Information Technology, or a related field.
Relevant Work Experience
At least 3 years of professional software engineering experience, preferably in backend development and production systems.
Hands-on experience building and supporting backend applications or services in Java.
Experience with APIs, databases, system integration, production deployment, or application support.
What You Can Demonstrate
Strong programming fundamentals: you can write correct, readable Java from first principles, reason about data structures, complexity, and concurrency, and explain why your code works.
Technical adeptness: you can read and understand an unfamiliar codebase, including code built on an in-house design, and make safe changes to it with limited guidance.
Debugging and root cause analysis: you can take a production symptom, form hypotheses, use logs, data, and code to confirm the cause, and deliver a lasting fix.
Integration and data: you have built backend services and integrations, ideally with exposure to messaging systems such as IBM MQ or ActiveMQ, XML, WSDL, batch processing, schedulers, or ETL flows, and worked with relational databases such as Oracle or MariaDB, including SQL, stored procedures, and basic performance tuning.
Delivery: you understand CI and CD pipelines and have supported software releases or production deployments.
Security awareness: you understand secure coding, authentication, authorisation, and the security requirements of banking or payment systems.
Required Competencies and Skills
Completes assigned development work independently while collaborating with senior engineers and other team members.
Communicates technical information clearly to both technical and non-technical stakeholders.
Takes strong ownership of assigned features, code quality, testing, documentation, and issue resolution.
Shows sound judgement when identifying problems, evaluating possible solutions, and escalating risks.
Works effectively across Product, Project, Business, Operations, and Engineering teams.
Preferred and Good to Have
Experience with Spring Boot and microservices architecture.
Exposure to multiple technology stacks or the full software development lifecycle.
Experience in banking, fintech, payments, or other regulated systems.
Familiarity with DevOps or site reliability engineering concepts and incident response.
Experience improving application performance, database performance, or infrastructure efficiency.
- Department
- Kayaaku
- Role
- Software Engineer 2
- Location
- Finexus Campus