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.
Works with developers to assist detailed problem resolution for difficult problems which are proving difficult for Lead Developers to resolve.
Works on improving use of tools relating to AMS development/tools used.
BASIC QUALIFICATIONS:
Bachelor s degree in computer science or related field
A minimum of 6 years of experience in software design and development
A minimum of 6 years of experience in preferred technology stack,
Must Have
Very strong development experience C#, Visual Studio, memory profile and performance tools.
API based design and development using REST API
Multi-threading Concepts
Unit testing and integration testing frameworks
Messaging services.
Strong understanding and affinity towards building scalable and robust solutions.
Very strong understanding of SQL DBS
In depth understanding of Design Patterns and ability to design a Class Model, Data Model for a given requirement.
Experience with CI/AppSec tools like - Sonar, Coverity, Whitesource etc.
Strong in Debugging, Memory Leaks, Profiling, Crashes, etc Good to Have
Good understanding of NFT Performance; scalability and availability and familiarity with Tools
Cloud Native Application Development
Should be familiar with TCP/IP, HTTPs/SSL
Networking concepts like how to setup and configure name servers and network interfaces Load Balancers Deep understanding of Software Development and Quality Assurance best practices
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:
o Secured development knowledge
o DevOps for the cloud deployments
o CI/CD pipeline
o Cloud development knowledge on Azure or GCP
Good to have domain experience of Loyalty in Retail or Hospitality space
Experience with tools utilized in development environment:
Jira
GIT
White source
Scripting languages