Professional Service – Software Engineer
About NCR Atleos NCR Atleos, headquartered in Atlanta, is a leader in expanding financial access. Our dedicated 20,000 employees optimize the branch, improve operational efficiency and maximize self-service availability for financial institutions and retailers across the globe. About NCR Atleos NCR Atleos Corporation (NYSE: NATL) is a financial technology company focused on expanding self-service financial access. With industry-leading ATM expertise, global operational scale, always-on services and continuous innovation, NCR Atleos helps financial institutions improve operational efficiency, supports retailers in driving customer footfall, and enables digital-first self-service banking experiences for consumers. NCR Atleos is headquartered in Atlanta, Georgia, and employs approximately 20,000 people globally. Position Summary & Key Areas Of Responsibility Primary responsibility is to develop high quality software solutions as a contributing member of a highly skilled and motivated team of Software Engineers and Consultants. This individual will integrate the Global Professional Services group and will be part of an Agile team working on software development and deployment projects globally. Responsibilities Include: Work primarily on client/ATM software development tasks, including integration with ATM hardware components, device-level interactions, and troubleshooting of client-side or hardware-related issues. Develop high quality software which meets requirements, promote re-use of software components and facilitates ease of support. Diagnose, isolate, and implement remedies for system failures caused by errors in software code. Follow the team’s software development process and contribute to continuous improvement Identify and implements process improvements Utilize software-based system maintenance and tracking tools Conduct unit tests, track problems, and implement changes to ensure adherence to test plan and functional/non-functional requirements Analyse, design and implement software mechanisms to improve code stability, performance, and reusability. Participate and lead code review sessions Create good estimates of their own work efforts and assist others in estimating task effort and dependencies. Be co-responsible for team commitments and delivery goals Apply good debugging and troubleshoot techniques to understand and resolve defects found in software Stay current with technology, disseminate knowledge to team members, form best practices Create high quality documentation as required like functional specifications; unit test specifications Provide input and technical content for technical documentation, user help materials and customer training When required, travel to customer sites (usually for no longer than one week at a time) and work with customers on project related activities The Ideal Candidate Will: Have excellent communication skills (English is essential) Have excellent teamwork and collaboration skills Have good understanding of design patterns and system design Be a self-starter, able to use his/her own initiative to get things done Be reliable, enthusiastic and have a ‘can-do’ attitude towards achieving the team’s objectives Be passionate about technology and how it can be used to “make the everyday easier” Basic Qualifications: Bachelor’s Degree in Computer Science, Engineering or related field At least 3 years of professional experience in software design and development Experience with web applications development including client and server-side technologies Good understanding of Software Development and Quality Assurance best practices Excellent written and verbal communication skills Availability to travel (up to 10% of the time, usually for short durations) Preferred Qualifications: Experience with .NET (C#) or similar programming languages Experience with JavaScript, Angular (TypeScript), React or similar front-end frameworks Experience with RESTful API services: understanding, consuming and implementing Experience with WebSocket-based communication: understanding, consuming and implementing real-time client/server interactions Experience with Unix/Linux environments and scripting Experience with Secure Software Development Lifecycle process Understanding of Unit Testing and experience with frameworks for their implementation Experience with the development of mission-critical, event-driven, fault-tolerant software applications Experience with tools like GitHub, Jenkins, Jira, SonarQube or others Experience operating in a collaborative software development environment Not what you are looking for? Try these related job searches Professional Service Software Engineer jobs in Nicosia NCR Atleos careers in Nicosia Information Technology jobs in Nicosia Customer Service jobs in Cyprus