Job Summary
We are seeking a Senior Software Engineer specializing in software development within Windows environments. The role will focus on sustaining existing applications and developing new features for payment applications. The successful candidate will be responsible for analyzing and implementing product backlog items, contributing to development sprints, and delivering high-quality software solutions.
Key Responsibilities
• Understand, design, and develop new functions for payment products and integrations with third-party payment products.
• Analyze and implement product backlog items for inclusion in development sprints.
• Learn and adopt new technologies and projects with minimal guidance or documentation.
• Participate in Scrum activities, including sprint planning, reviews, retrospectives, and product backlog grooming sessions.
• Complete individual assignments defined within each Scrum sprint with minimal supervision.
• Assist in triaging customer-reported field issues in collaboration with product support and help desk teams.
• Apply sound technical judgment to meet project schedules while maintaining software quality.
• Perform design reviews and code reviews.
• Collaborate with payment development team members to ensure successful project delivery.
• Promote software quality and engineering best practices throughout the development lifecycle.
Required Qualifications
• Bachelor's degree in Computer Science or equivalent.
• Minimum 5 years of software development experience.
• 3+ years of software development experience within Windows environments.
• Experience with C# and .NET Core.
• Experience with front-end technologies such as Angular, HTML5, or React.
• Experience with at least one virtualization or containerization technology such as Docker, Kubernetes, or VMware.
• Strong understanding of object-oriented programming, SOLID design principles, and multithreaded programming.
• Experience developing REST and RESTful Web APIs.
• Strong understanding of software development lifecycle and Agile/Scrum methodologies.
• Ability to work independently with minimal supervision in onsite and remote work environments.
• Strong communication and collaboration skills.
• Ability to analyze technical problems and develop effective solutions.
Preferred Qualifications
• Experience with payment software, Point of Sale (POS), or Electronic Payment System (EPS) development.
• Understanding of EMV, P2PE, PCI PA-DSS, or payment systems.
• Experience with real-time embedded development, preferably Windows CE 6.0, IoT, or Windows 10 environments.
• Experience with TCP/IP sockets, serial communication, USB, video, or audio development.
• Experience with .NET Compact Framework 3.5 and Visual Studio 2008 using C# or VB.
• Experience working with hardware simulators.
• Familiarity with development and collaboration tools such as Jira, Bitbucket, Visual Studio Team Explorer, and SourceTree.
• Experience with SignalR and RabbitMQ.