Software Engineer - ATM Applications
Job Description
Truist Bank is seeking a Software Engineer to design, develop, test, and maintain complex software solutions with a focus on ATM applications and transaction processing. This onsite role in Charlotte, NC involves end-to-end work across the full software development lifecycle, from requirements and design through deployment and production support.
In this position, you will build and enhance ATM software components and services, troubleshoot complex defects, and support secure coding and quality practices. You will also collaborate with cross-functional technical teams, lead code reviews, and mentor junior engineers to strengthen long-term maintainability and performance.
What you will do
- Independently design, develop, test, and maintain complex software components and services that address business and user requirements.
- Implement advanced features and enhancements using established coding standards, architectural patterns, and development best practices.
- Lead code reviews and provide constructive feedback to improve code quality, maintainability, and performance.
- Collaborate with cross-functional technical teams to plan and execute technical initiatives and deliver solutions on schedule.
- Troubleshoot, debug, and resolve complex software defects and production issues using root-cause analysis and corrective actions.
- Participate in the full software development lifecycle, including requirements analysis, design discussions, development, testing, deployment, and support.
- Apply secure coding practices, testing strategies, and documentation standards to ensure software quality and alignment with organizational guidelines.
- Mentor and support junior engineers, helping them grow technically and follow best practices.
- Use and contribute to existing frameworks, tools, and technologies to improve application development across relevant technology domains.
Required qualifications
- Bachelor’s degree in computer science, Software Engineering, or a related field, plus 5 years of relevant experience or equivalent education and training.
- In-depth knowledge of information systems, with the ability to identify, apply, and implement IT best practices.
- English fluency (required).
Technologies and methods
- CEN/XFS-based ATM devices
- NDC messaging protocols
- Agile
Strongly preferred qualifications
- Independently design, develop, test, and maintain complex ATM software applications, components, and services for reliable and secure ATM functionality and transaction processing.
- Develop, maintain, and enhance ATM applications and transaction-processing capabilities, including integration with various banking applications, host systems, and supporting services.
- Demonstrate strong technical knowledge of ATM technologies (including CEN/XFS-based ATM devices and NDC messaging protocols) and apply it during development, troubleshooting, and enhancements.
- Implement advanced ATM features and enhancements using established coding standards, architectural patterns, reusable frameworks, and software-development best practices.
- Develop and support ATM functionality across interactions between the ATM application, device components, transaction messages, host systems, and downstream banking services to support accurate end-to-end transaction processing.
Preferred qualifications
- Master’s degree or MBA.
- Certification in Six Sigma Green Belt, CQIA, or similar process improvement methodologies.
- Previous experience in the banking or financial services industry.
- Experience working in Agile development environments.
Schedule and employment type
- Regular employment
- 1st shift (United States of America)
Benefits
- Medical, dental, and vision
- Life insurance
- Disability
- Accidental death and dismemberment
- Tax-preferred savings accounts
- 401k plan
- No less than 10 days of vacation in the first year (prorated based on date of hire and full-time or part-time status)
- 10 sick days (also prorated)
- Paid holidays
- Defined benefit pension plan
- Restricted stock units
- Deferred compensation plan
All regular teammates (not temporary or contingent workers) working 20 hours or more per week are eligible for benefits, though eligibility for specific benefits may be determined by the division offering the position. Eligibility for defined benefit pension plan, restricted stock units, and/or a deferred compensation plan may also depend on the position and division. During the hiring process, additional details about specific benefits will be provided based on full-time or part-time status, position, and division.
If you have a disability and need assistance with the application, you can request a reasonable accommodation by emailing Accessibility (accommodation requests only; other inquiries will not receive a response).