Staff Software Engineer Performance Engineering

Year    Bangalore, Karnataka, India

Job Description

Company Description

Visa is a world leader in digital payments, facilitating more than 215 billion payments transactions between consumers, merchants, financial institutions and government entities across more than 200 countries and territories each year. Our mission is to connect the world through the most innovative, convenient, reliable and secure payments network, enabling individuals, businesses and economies to thrive.

When you join Visa, you join a culture of purpose and belonging - where your growth is priority, your identity is embraced, and the work you do matters. We believe that economies that include everyone everywhere, uplift everyone everywhere. Your work will have a direct impact on billions of people around the world - helping unlock financial access to enable the future of money movement.

Join Visa: A Network Working for Everyone.



This position is ideal for an experienced software engineer who is passionate about solving challenging business problems and building applications that have high availability & resiliency. The candidate will be extensively involved in hands-on performance & chaos engineering activities including POCs, design, documentation, code instrumentation, profiling and monitoring application, middleware & platforms components. You will be an integral part of the Open VisaNet performance engineering team.

Responsibilities

  • Accountable for creating application and infrastructure performance plans/models for a highly scalable, low-latency, highly available and high-throughput payment processing system
  • Understand and own component level performance engineering activities, including code and data flow review.
  • Design and contribute to performance and resiliency testing and tuning of distributed components.
  • Coordinate with the Dev / QE / Support / PM teams to review and document requirements.
  • Evaluate, develop, and execute load test tools to simulate workload limits of Visa s most critical payment applications
  • Design and conduct tests with complex workloads and data shapes to expose potential bottlenecks and failure points.
  • Perform root cause analysis for the issues identified.
  • Analyze metrics and trends to glean opportunities for performance improvements of the application.
  • Experiment with ways to eliminate issues and present corrective actions, conduct session with developers and architects on the corrections/techniques suggested.
  • Oversee system performance lifecycle and identify key metrics for performance improvements.
  • Generate periodic performance engineering reports for architects, developers, and PMs to review.
  • Conduct technical presentations to enable teams on how to improve system and application performance.
  • Innovate solutions to improve performance engineering effectiveness.
  • Design and contribute to performance tuning, scalability, reliability, and high availability of fault-tolerant distributed components
  • Ensuring proper documentation and internal publishing of design tradeoffs, code best practices and lessons learned
  • Support in triaging and troubleshooting of highly distributed services in production environment
  • Design and develop Performance Engineering aide like profiles, traces, or any observability framework.
  • Design and develop Performance best practices and influence non-functional requirements at early stages
  • Work closely with application development teams to provide technical direction to improve application performance
Mandatory Skillset
  • Deep Understanding of Performance KPIs and their tradeoffs and patterns
  • Performance Modeling capability based on Performance Test Numbers for a predefined application Non-Functional Requirement
  • Understanding of Microservices/CGROUP and Namespaces in Linux
  • Deep Understanding of Linux Memory management
  • Deep Understanding of IO Subsystem (IO subsystem layers, Type of IOs, Caching, Filesystems, RAID)
  • Understanding of Compute subsystem with in-depth knowledge of scheduling of process, thread and goroutines/LWT
  • Understanding of process state, context switches, system calls
  • Understanding of NW layers - protocols, flow control and congestion control
  • Some knowledge on Data Center
  • Knowledge of at least one language - GoLang, Python or Java. Should be able to code independently
  • Ability to build Cost Profile for Application based on test results [CPU, Memory, IO, and Network]
  • Ability to profile CPU and Memory consumptions or raw dumps. Familiarity with traces, thread dumps, debug log
  • Create performance test strategy and test cases
  • Design Chaos test case scenarios and formulate test strategy by identifying failure points
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 two days a week, Tuesdays and Wednesdays with a general guidepost of being in the office 50% of the time based on business needs.

Qualifications
  • Minimum of 8 years hands-on experience in Performance Engineering role
  • Bachelor s or Master s degree in computer science or a related technical discipline
  • Domain experience in Payment technologies will be a plus
Additional Information

Visa has adopted a COVID-19 vaccination policy. As a condition of employment, all employees based in the country where this job is located are required to be fully vaccinated for COVID-19, unless a reasonable accommodation is approved or as otherwise required by law.

Beware of fraud agents! do not pay money to get a job

MNCJobsIndia.com will not be responsible for any payment made to a third-party. All Terms of Use are applicable.


Related Jobs

Job Detail

  • Job Id
    JD2968470
  • Industry
    Not mentioned
  • Total Positions
    1
  • Job Type:
    Full Time
  • Salary:
    Not mentioned
  • Employment Status
    Permanent
  • Job Location
    Bangalore, Karnataka, India
  • Education
    Not mentioned
  • Experience
    Year