Software Engineer I
Skip the busywork
ApplyBolt rewrites your resume for this exact role and hits submit. You just pick the jobs.
About this role
NMI is a leading provider of payment gateway solutions, specialising in card-present solutions and payment processing. Our innovative technologies empower businesses to securely accept payments and optimise transaction processes. With a focus on reliability, security, and innovation, we continuously push the boundaries of what’s possible in the payments industry.
We are seeking a Software Engineer I to join our Payments Processing group. This group develops and maintains world-class payment solutions, including PIN pad and card reader integration, mobile SDKs, and processor/acquirer connectivity.
This is an excellent opportunity for an early-career engineer to work on real-world, production systems in the payments space while developing strong technical foundations in secure and reliable software development.
The ideal candidate is a motivated and capable software engineer with a solid foundation in software development and a strong desire to learn and grow.
You may have experience in one or more of the following areas:
- Backend development (C#/.NET)
- Mobile development for Android (Java/Kotlin) or iOS (Objective-C/Swift)
You are comfortable working on well-defined tasks, contributing to team discussions, and developing your skills in building secure and reliable systems. You take pride in writing clean, maintainable code and are eager to learn best practices in software design, testing, and deployment.
You work well within a team environment and are open to feedback and mentorship from more experienced engineers.
Key Responsibilities:
- Develop and maintain secure, high-quality SDKs and backend services under the guidance of senior engineers.
- Write clean, well-structured, and maintainable code following established engineering standards.
- Participate in code reviews and incorporate feedback to improve quality and consistency.
- Collaborate with Product, QA, and other engineers to deliver features and resolve defects.
- Assist in debugging, troubleshooting, and resolving issues in SDKs and backend services.
- Contribute to testing efforts, including unit and integration testing.
- Follow security and compliance guidelines (e.g., OWASP, PCI) in all development work.
- Participate in team ceremonies and contribute to continuous improvement initiatives.
- Join the team’s out-of-hours on-call rota after an onboarding period, with appropriate support and compensation provided
Skills & Experience:
- Bachelor’s degree in Computer Science, Information Technology, or equivalent practical experience.
- 0–2 years of professional software development experience (including internships or placements).
- Proficiency in at least one object-oriented programming language (e.g., C#, Java, Kotlin, Swift).
- Solid understanding of object-oriented programming principles and basic design patterns.
- Familiarity with the Software Development Life Cycle (SDLC) and agile methodologies.
- Basic understanding of relational databases (e.g., MySQL, SQL Server, Oracle).
- Awareness of secure coding practices and common web/application security concepts (e.g., OWASP Top Ten).
- Basic understanding of networking fundamentals (e.g., HTTPS, DNS, SSL).
- Strong problem-solving skills and a willingness to learn from feedback
- Good communication skills and the ability to collaborate effectively within a team.