Visa is looking for a Senior Software Engineer, who will help build Open VisaNet, Visa's Next generation payment processing platform developed on Open Systems, that would fuel growth in electronic payments globally and drive financial inclusion in many parts of the world. Open VisaNet, is the Next Generation VisaNet, will push the envelope of building highly scalable, secure, cost effective and distributed application on commodity hardware using best-in-class technology components. Open VisaNet is one of Visa's Key initiative that will help Visa support in-country processing solutions and provide Visa an opportunity to move away from Proprietary Mainframe type systems. It is built as a modern distributed architecture based on micro services with goals of five 9’s availability, fault tolerance, horizontal scalability and real time latency for largest scale transaction processing. Open VisaNet leverages state of the art Open Software technologies to achieve these goals on commodity hardware, such as Go,  Apache Kafka, Cassandra , Docker, Kubernetes, Aerospike etc. and involves collaboration with exceptional group of software engineers, systems performance engineers, security specialists, DevOps engineers, payment experts, infrastructure and solution architects. Responsibilities includeParticipate in design discussions and implementation of highly scalable and fault-tolerant distributed components using functional programming paradigm, APIs, abstractions and integration patterns to solve challenging distributed computing problems.Collaborate with product and architecture teams and create low level design and lead(technical) development efforts, while contributing to the development of new initiatives. Around 1/4th of the development effort will be around bug fixes in QA and Production.Develop test scripts, test conditions, input test data, and expected results for one or more test plans in a development cycle by analyzing the Functional Specifications and Business Requirements.Reporting potential risks during all any stages of development lifecycle.Work and resolve any issues that arise out of the testing process(application or performance).Work across the team to ensure the team is predictable, productive, and delivering high quality.Ensuring adherence to the company's software testing processes and policiesRetain Audit compliance while supporting end users during their testing cycle.Provide daily updates on the development progress in scrum calls.Strong internal customer relationships are essential, and this position will work with Business Partners, internal staff, external vendors and system integrators on a daily basis to ensure a high-quality code is delivered and the delivered software is highly available, scalable and performant.This is a hybrid position. Hybrid employees can alternate time between both remote and office. Employees in hybrid roles are expected to work from the office 2-3 set days a week (determined by leadership/site), with a general guidepost of being in the office 50% or more of the time based on business needs.