Staff Software Engineer (Test Automation/Dev Ops)

  • Austin, TX, USA
  • Full-time

Company Description

About Visa

Common Purpose, Uncommon Opportunity. Everyone at Visa works with one goal in mind – making sure that Visa is the best way to pay and be paid, for everyone everywhere. This is our global vision and the common purpose that unites the entire Visa team. As a global payments technology company, tech is at the heart of what we do. CyberSource, a Visa company, has been and continues to be a pioneer within the e-Commerce Payment Management world. Our VisaNet network is capable of handling over 65,000 transaction messages per second for people and businesses around the world, enabling them to use digital currency instead of cash and checks.

We are also global advocates for financial inclusion, working with partners around the world to help those who lack access to financial services join the global economy. Visa’s sponsorships, including the Olympics and FIFA™ World Cup, celebrate teamwork, diversity, and excellence throughout the world. If you have a passion to make a difference in the lives of people around the world, Visa offers an uncommon opportunity to build a strong, thriving career. Visa is fueled by our team of talented employees who continuously raise the bar on delivering the convenience and security of digital currency to people all over the world. Join our team and
find out how Visa is everywhere you want to be.



Visa's Fraud and Authentication team is looking for curious, creative, and talented technologists to join our team.? You will be developing solutions that automate the release cycle from code check-in to deployment. Your solution will focus on eliminating wait times, manual handoffs, and automating as much as possible in order to improve the overall efficiency and reliability of our release and deployment processes. We are looking for someone with serious Software Development skills, strong interest in DevOps and Test Automation, and a passion for continuously delivering reliable software.

You will work with fellow Development and Quality Assurance engineers to design and implement Continuous Integration and Test Automation tools and frameworks that are critical in ensuring delivery of products with the highest levels of quality and reliability. This is considered a mid-level position. Opportunities to grow your career here at Visa are limited only by your passion to learn, desire to gain expertise, and drive to excel in delivering high quality products and services.

You will be an integral part of the agile development team, and will be assigned a variety of tasks pertaining to design and build and test of software applications and services. Your main focus will be on Test Automation tasks, however, other tasks will be assigned depending on need such as code design tasks, software coding tasks, bug fixes, or manual testing of new functionality. You will always be working on ways to facilitate better quality through the design, implementation, and execution of automated build and test systems. This role is for an individual whose experience with software development forms a strong basis for designing automated test solutions that will ensure that we deliver high quality services. You will have a passion, not only for understanding how the solutions work from a functional standpoint, but also for digging into the code to really understand what has been built to verify that the solution meets quality standards as well as functional requirements.


“Visa will consider for employment qualified applicants with criminal histories in a manner consistent with the requirements of Article 49 of the San Francisco Police Code.”

Job Description

  • Architecting, maintaining, and streamlining of continuous Delivery solutions for end to end CICD pipeline setup of one click build deployments 
  • Automate testing and deploying releases to multiple environments.
  • Work directly with agile Application Development teams to provide daily support aligned with a model of Continuous Delivery
  • Promote a Dev Ops culture through building relationships with Development & Operations and driving enhancements to the end-to-end release process
  • Ensure continuous availability of applications and related integrations in all pre-production environments.
  • Ensure continuous availability of various tools supporting SCM & Release Management including Source Control, Continuous Integration, & Change Management.
  • Maintaining source control branches and performing integrations with merge conflicts.
  • Facilitating and championing the quick resolution of problems found during the daily build and deployment efforts.
  • Creating and maintaining documentation of the build/release process.
  • Investigating tools and processes and integrating them so that they can improve the reliability, stability and efficiency with which we release our services.
  • Working closely with the development team to integrate new deployment processes and strategies to meet our feature requirements.
  • Design and build/extend Test Automation framework and Test utilizing latest technologies and a variety of languages.
  • Participate in design reviews to provide input on functional requirements, product designs, schedules, or potential problems.
  • Identify data needs and scenarios for Integration testing and end to end testing including areas such as database impacts, software scenarios, logging capabilities or usability.
  • Design and write test cases, automate test execution and report test results to development and product teams.
  • Collaborate on developing test automation utilities to make project testing more effective and efficient.
  • Develop new / extend existing Build and Test Automation tools, and frameworks as needed to make projects provide complete Continuous Integration environment.
  • Have a good understanding of requirements and test coverage.
  • Communicate effectively and responsibly in an Agile environment.
  • Become an expert at finding bugs, breaking things, helping development diagnose and fix the bug, improve the automated test, and do it over and over again.

Qualifications

  • Bachelor's degree in computer science, computer engineering or relevant field required, Master preferred.
  • 5 to 6 years software development experience in at least one programming language or technology including, but not limited, to Java, C/C++, Python, Javascript, etc.
  • Experience with source control, build and deployment tools such as Jenkins, Subversion, Maven, Hudson, Git, Chef.
  • Sound Knowledge on Source Control Tools such as GIT and SCM concepts (branching, merging, integration, versioning, etc.)Continuous Integration (CI) tools such as Jenkins, TFS, Bamboo and TeamCity. 
  • Should have hands on and good understanding on DevOps tools and automation framework to build CICDScripting experience with batch / shell scripting in Powershell and Linux.
  • Must be proficient with scripting languages such as Python, Unix Shell, Perl, Groovy and with build tools such as GIT, Ant, Maven & GradleKnowledge and experience with Linux, Windows 2008, 2012 Operating Systems
  • Should have working experience with monitoring tools like OPNET, and/or SPLUNK, or any other experience working in Agile environments. 
  • Experience with build and release of online services and a passion for delivering a quality experience to customers.
  • Ability to work in a fast-paced environment where iterative changes may need to go out in rapid succession.
  • Knowledge of test automation tools and frameworks such as Cucumber, Ruby, Selenium, Robot, etc.-  
  • Knowledge of web services standards and related technologies (XML, SOAP, JSON, REST, etc.).-   
  • Knowledge of SOAP UI Automation using Groovy scripts and SOAP UI Pro.
  • Knowledge of database query tools and ability to write and run SQL queries for data validation.
  • Ability to translate requirements from Jira User stories to automated tests.
  • Comfortable working within established code and process frameworks.
  • Proactive and self-motivated – willing to improve on existing processes to allow for faster iterations
  • Knowledge of software testing (unit, functional, regression, integration and end to end testing).
  • Experience working in UNIX/Linux environments.
  • Candidate must be able to multi-task and be able to work independently or in a team environment.
  • Passion for finding issues and a desire to break things while testing beyond the application limits.
  • Strong analytical and problem solving skills and attention to detail.
  • Excellent verbal and written communication and documentation skills.
  • Strong track record of learning new tools and technologies.

Additional Information

All your information will be kept confidential according to EEO guidelines.