We are seeking a highly skilled and experienced Software Engineer to join our team. The ideal candidate will have a strong background working on large scale solutions, with good understanding of the solution architecture, programming, system design, and migration planning. This role requires a detail-oriented professional who can identify key activities and gaps concerning customer adaption to platform and develop comprehensive solutions for addressing the gaps.
POSTION SUMMARY & KEY AREAS OF RESPONSIBILITY:
Primary responsibility is to develop high quality software solutions as a contributing member of a highly motivated team of Engineers. This individual will serve the Software Engineering III role on an Agile team on NCR Voyix Platform Acceleration Team.
Responsibilities include:
Develop high quality software which meets requirements, promotes re-use of software components, and facilitates ease of support.
Diagnose, isolate, and implement remedies for system failures caused by errors in software code.
Identifies and implements process improvements in Engineering practices.
Utilize software-based system maintenance and tracking tools.
Provide input and technical content for technical documentation, user help materials and customer training.
Conduct unit tests, track problems, and implement changes to ensure adherence to test plan and functional/nonfunctional requirements.
Analyze, design, and implement software mechanisms to improve code stability, performance, and reusability.
Participates and leads code review sessions.
Create high fidelity estimates of their own work efforts.
Assist others in estimating task effort and dependencies, responsible for team commitments within the Sprint.
May be asked to lead and advise other Engineering resources as part of project activities.
Considered subject matter experts in their chosen field
Participates with industry groups, stays current with technology and industry trends, disseminates knowledge to team members, forms best practices.
Communicate with Solution Management and other internal teams.
Participates in cross-functional collaboration within the organization.
Solution Architecture: Good To Have
Design and Development: Lead the design and development of complex systems, ensuring they meet both functional and non-functional requirements.
Technical Leadership: Provide technical leadership and guidance to development teams, ensuring best practices in architecture and design are followed.
Architecture Reviews: Conduct architecture reviews and assessments to ensure solutions align with business goals and technical standards.
Documentation: Create and maintain detailed architecture documentation, including diagrams, models, and technical specifications.
Innovation: Stay updated with the latest industry trends and technologies, and incorporate innovative solutions into the architecture.
Problem Solving: Identify and resolve architectural issues, ensuring the scalability, reliability, and performance of solutions.
Stakeholder Collaboration: Work closely with stakeholders, including business leaders, developers, and other architects, to ensure alignment and understanding of architectural decisions.
Programming: Must Have
Expert in .Net or Java.
Comfortable with MSSQL DB, MongoDB/CouchDB, and Redis.
Knowledge of Python and GO is a plus.
System Design: Good To Have
Cloud Engineering:
Experience with Azure and GCP services.
Design and implement scalable, reliable solutions with a focus on cost-efficiency.
DevOps/SRE:
Work in a team that owns both operations and development.
Track key metrics to ensure system reliability and performance.
Experience with audits is a plus.
Security:
Understand and implement network and application security best practices.
Experience with security audits is a plus.
System Integration:
Ensure seamless integration of various system components and third-party services.
Develop and maintain integration architecture and standards.
Performance Optimization:
Continuously monitor and optimize system performance.
Implement best practices for performance tuning and scalability.
Migration Planning: Good To Have
Data Handling:
Handle large amounts of data, including transformation and validation.
DB Optimization:
Knowledge of MS SQL Server DB tuning.
Familiarity with open-source/cloud tools for large migrations.
Automation:
Automate tasks to achieve repeatable results.
Experience with AI tools for automation is a plus.
Artificial Intelligence (AI): Good To Have
AI Integration: Leverage AI tools and technologies to enhance system capabilities and performance.
Machine Learning: Apply machine learning techniques to solve complex problems and improve decision-making processes.
AI-driven Automation: Utilize AI to automate repetitive tasks and optimize workflows.
Innovation: Stay updated with the latest AI trends and incorporate them into architectural solutions.
Mentoring/Grooming: Must Have
Formal mentoring. Identifies and documents immediate associate and has a mentoring plan for those prot g es. Ensures all team members with 2 or more experience are also mentoring more junior staff and have mentoring plans.
Mentors TEAMS on Architecture/Design, coding skills, Tools, Processes & Procedures
Assists Global Learning in course development and validation.
Problem Solving: Must Have
Works with teams to assist detailed problem resolution for difficult problems which are proving difficult for Lead Developers to resolve.
Continuous Improvement: Must Have
Works on improving use of tools.
Is always assigned and working effectively on at least one Continuous Improvement action.
Basic Qualifications:
Bachelor s degree in computer science or related field
A minimum of 5 years of experience in software design and development
A minimum of 3 years of experience in preferred technology stack,
Strong expertise in .Net or Java, with additional knowledge of Python and GO being advantageous.
Experience with cloud engineering, particularly Azure and GCP.
Familiarity with DevOps/SRE practices and security best practices.
Experience in data handling, DB optimization, and automation.
Experience with AI tools and technologies is a plus.
Excellent communication and relationship-building skills.
Excellent written and verbal communication skills
Excellent teamwork and collaboration skills
Experience operating in an Agile environment, with a deep understanding of agile development principles.
Familiarity with Continuous Improvement and Six Sigma Lean principles.
Preferred QUALIFICATIONS:
Knowledge of software development standards and protocols:
Secured development knowledge
DevOps for the cloud deployments
CI/CD pipeline
Cloud development knowledge on Azure or GCP
Good to have POS domain experience of in Retail or Restaurants industries.
Experience with tools utilized in development environment.
EEO Statement
Integrated into our shared values is NCR Voyix commitment to diversity. NCR Voyix is committed to being a globally inclusive company where all people are treated fairly, recognized for their individuality, promoted based on performance, and encouraged to strive to reach their full potential. We believe in understanding and respecting differences among all people. This concept encompasses but is not limited to human differences with regard to race, ethnicity, religion, gender, culture and physical ability. Every individual at NCR has an ongoing responsibility to respect and support a globally diverse environment.
Statement to Third Party Agencies
To ALL recruitment agencies: NCR Voyix only accepts resumes from agencies on the NCR Voyix preferred supplier list. Please do not forward resumes to our applicant tracking system, NCR Voyix employees, or any NCR Voyix facility. NCR Voyix is not responsible for any fees or charges associated with unsolicited resumes.