NCR offers a complete range of technology solutions that transform information into more enduring, more profitable relationships. In the transaction processing back office team the focus is on payment and image processing solutions designed to help financial institutions and corporations deliver innovative products and services. These solutions enable item-based transactions to be digitally captured centrally or distributed (to ATMs, branches, merchant and corporate locations), processed, archived and exchanged for total data perfection.
All NCR Software Developers possess the below skills:
Superior analytical and problem solving skills Ability to work independently on diverse problems. Team orientation and leadership potential. Ability to design, code and correct defects of software modules. Excellent oral and written communication skills. Passion for technology.
Roles & Responsibilities:
Key activities may include:
Completes application development by coordinating requirements, schedules, and activities; contributing to team meetings; troubleshooting development and production problems across multiple environments and operating platforms. Deploy various systems, tools and applications (including installation and developer testing). Participate in design reviews and code walk-throughs. Generate appropriate documentation for the proper ongoing support and maintenance of software modules. Support and implement best practices for software development including developer unit testing and deployment testing as appropriate. Participate in system level activities such as integration and system test as required. Communicate project/work status orally, written, or other as required.
Experience & Skill Requirements:
7+ yrs of experience into IT industry. Hands on experience in Java, JEE, Java script, Experience in Mobile Application Development (native and browser based apps) JMS and experience with asynchronous design pattern development. JSP, JSF, or other web development skills Relational Database Management Systems - SQL programming XML programming Object oriented design Experience developing Web based applications using HTML 5. Knowledge of Agile methodologies and CI (Continuous Integration). Knowledge of TDD (Test Driven Development) using Junit for unit tests. Systems programming in Unix or Windows. Knowledge of n-tier architectures and model-view-controller software architectures.
Additionally, experience with any of the following technologies would also be an asset:
Hibernate EJB 3.0 JEE application servers and web servers (IBM WebSphere (8, 8.5.x), JBoss, Apache Tomcat, Jetty, Glassfish) Web Services and Web Services frameworks (CXF, jax-ws) Docker containers running in a Kubernetes environment Knowledge of QA strategies, techniques and methodologies (black box, white box, etc.) Prefer candidates who have experience working on high volume systems and has working knowledge of performance testing and tuning.