Senior Software QA Engineer - SDET, Open VisaNet
- Bengaluru, Karnataka, India
As the world's leader in digital payments technology, Visa's mission is to connect the world through the most creative, reliable and secure payment network - enabling individuals, businesses, and economies to thrive. Our advanced global processing network, VisaNet, provides secure and reliable payments around the world, and is capable of handling more than 65,000 transaction messages a second. The company's dedication to innovation drives the rapid growth of connected commerce on any device, and fuels the dream of a cashless future for everyone, everywhere. As the world moves from analog to digital, Visa is applying our brand, products, people, network and scale to reshape the future of commerce.
At Visa, your individuality fits right in. Working here gives you an opportunity to impact the world, invest in your career growth, and be part of an inclusive and diverse workplace. We are a global team of disruptors, trailblazers, innovators and risk-takers who are helping drive economic growth in even the most remote parts of the world, creatively moving the industry forward, and doing meaningful work that brings financial literacy and digital commerce to millions of unbanked and underserved consumers.
You're an Individual. We're the team for you. Together, let's transform the way the world pays.
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. Building Open VisaNet will involve collaboration with exceptional group of software engineers, security specialists, DevOps engineers, test automation engineers, designers, payment experts and infrastructure architects.
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, Docker, Kubernetes etc.
We believe that great design has the ability to engage and inspire users and we strive to rethink and redefine how users interact with our applications and products.
We are looking for candidates with experience in software design, development and testing.You are a team player, making sure that everyone in the team feels valued and is excited to work with you. The successful candidate should be a quick learner, be responsible for solving complex problems and taking a broad perspective to identify innovative solutions.As a Senior Software Engineer, you should have strong analytical and problem solving skills, good time management skills, collaborate and communicate effectively with team members, and work closely with peer groups team to identify new scope of work and undertake initiatives.
All in all, you are a motivated personality who is able to proactively identify ways to add value to the team, even when those may not be spelled out, you are flexible and willing to switch tasks based on team's needs. No matter the challenge, you know you can find a solution and encourage others to think the same. You recognize when to ask for help and when to collaborate with others and work across departments. You are team-oriented having strong work ethics with an innate desire to take up ownership and drive initiatives.
Responsibilities include :
• Participate 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.
• Help converting business requirements into technical requirements and design, and develop system acceptance criteria, functional test plans with a focus on coverage, performance and automation.
• Collaborate with the multiple teams across Development, Operation & Infrastructure, Product to analyze, debug and resolve design and code issues. Support cross-functional teams in integrated test efforts.
• Identify process improvements, error trends and/or the root causes and make recommendations for remedies to colleagues and management.
• Contribute to efficient development process pipeline by leveraging best-in-class CI/CD tools.
• Participate in cross-group and internal customer feature demos. Document process, designs, test results, and analysis.
• Help develop and execute chaos test suite for business services as well as infrastructure
- Perform quality assurance testing inclusive of unit, systems, integration and regression testing, and support development of test automation
- Coordinate and support integration, end-to-end testing with peer Test Engineering groups to ensure seamless code releases.
- Ensure delivery of a high quality product meeting all requirements within the scheduled timeframe
- Collaborate closely with the development team to analyze, debug and resolve any application issues
- Develop innovative approaches to accommodate tight schedules and resource constraints using test automation.
- Build and implement scalable, reusable test automation frameworks.
BS or MS in computer science, computer engineering or relevant field.
4-7 years of experience in software development lifecycle.
Extraordinary software engineering talent.
Good programming skills and experience with atleast any one these programming languages - C, C++, Java, Go, Scala
Demonstrated ability to work well with a globally distributed team in a high performance organization
Proactive, willing to take ownership, ability to quickly learn new technologies and take up new tasks and initiatives
Should have excellent problem solving, analytical and technical troubleshooting skills.
Demonstrated proficiency in troubleshooting, root-cause analysis, application design, and implementing large components for enterprise projects
Experience in system automation using framework such as Cucumber
Knowledge of functional programming languages like Go, Scala or the ability to learn them quickly is a big plus
Experience with distributed database, distributed computing and high frequency transactions is a big plus.
Working familiarity with the entire software development lifecycle including version control, build process, testing, and code release.
Experience with development, build, testing and continuous integration tools.
Effective verbal and written communication skills.
Thrive in self-motivated internal-innovation driven environment.
Nice to have :
- Exposure to Test Driven Development
- Experience in validating and benchmarking high frequency transactions
- Exposure to Micro Services based architecture
- Knowledge of Payment Processing systems, GoLang, Erlang, Cucumber
- Knowledge of ISO 8583, SOAP, XML messaging, REST, JSON
- Exposure to CI/CD / Code Coverage / Static Code analysis Tools
- Exposure using Frontend/Backend development frameworks AngularJS, ReactJS, Node.js
- Experience in chaos testing is a plus
- Exposure to open source Performance benchmarking tools
- Exposure to Visualisation Tools - Tableau, Google Analytics
Visa will consider for employment qualified applicants with criminal histories in a manner consistent with EEOC guidelines and applicable local law.