Staff Software Engineer - Full Stack (Performance Engineering) (Hybrid/Onsite)

Visa
Foster City, CA, United States
Full-time

Job Description

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.

Essential Functions

Responsible for developing performance plans and models for applications and infrastructure in a highly scalable, low-latency, high-availability, and high-throughput payment processing system.

Comprehend and take ownership of component-level performance engineering tasks, including code and data flow reviews.

Create and participate in performance and resiliency testing and fine-tuning of distributed components.

Collaborate with Development, Test Engineering, Support, and Product & Project Management teams to review and document requirements & timelines

Assess, create, and execute load-testing tools to simulate workload limits for Visas most critical payment applications.

Engage in performance engineering with a shift-left approach on microservices and establish benchmarks. Proficiency in Go Benchmarks and Go Profiling is advantageous.

Design and carry out chaos-resiliency evaluation experiments on microservices to identify potential resiliency weaknesses and failure points.

Perform root cause analysis for identified issues.

Analyze metrics and trends to find opportunities for enhancing application performance.

Explore methods to resolve issues and present corrective actions, conduct sessions with developers and architects to discuss recommended improvements or techniques.

Oversee the system performance lifecycle and identify key metrics for performance enhancements.

Generate regular performance engineering reports for review by architects, developers, and project managers.

Deliver technical presentations to guide teams on improving system and application performance.

Innovate solutions to enhance the effectiveness of performance engineering.

Contribute to performance tuning, scalability, reliability, and high availability of fault-tolerant distributed components.

Ensure proper documentation and internal publication of design trade-offs, code best practices, and lessons learned.

Support in triaging and troubleshooting highly distributed services in production environments.

Design and develop performance engineering aids like profiles, traces, or any observability frameworks.

Establish and promote performance best practices and influence non-functional requirements at early stages.

Work closely with application development teams to provide technical direction for improving application performance.

Mandatory Skillset

In-depth understanding of application performance KPIs, including their trade-offs and patterns

Capability in performance modeling using performance test data tailored to specific non-functional requirements of an application

Solid grasp of microservices architecture, CGROUP, and namespaces within Linux

Comprehensive knowledge of Linux memory management systems

Expert understanding of the IO subsystem, including its layers, various types of IO operations, caching mechanisms, file systems, and RAID configuration

Proficient in the compute subsystem with detailed knowledge of process, thread, and goroutines or LWT scheduling

Familiarity with process states, context switching, and system calls

Understanding of network layers, protocols, flow control, and congestion control

Basic knowledge regarding data centers

Proficiency in at least one programming language such as GoLang, Python, or Java, with the ability to write code independently

Skill in building a cost profile for applications based on CPU, memory, IO, and network test results

Ability to profile CPU and memory consumption or raw dumps and familiarity with traces, thread dumps, and debug logs

Experience in creating performance test strategies, including the development of test cases

Proficiency in designing chaos test case scenarios and formulating test strategies by identifying potential 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 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.

2 days ago
Related jobs
Promoted
Visa Inc.
San Mateo, California

Staff Software Engineer - Full Stack (Performance Engineering) (Hybrid/Onsite). 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 exte...

Promoted
Walmart
Hayward, California

Option 1: Bachelor's degree in computer science, computer engineering, computer information systems, software engineering, or related area and 3 years' experience in software engineering or related area. Master's degree in Computer Science, Computer Engineering, Computer Information Systems, Softwar...

Promoted
Tangerine Search Inc.
CA, United States

Join a dynamic and evolving tech team as a Fullstack Developer, where you'll contribute to an expanding project that will grow and split into specialized pods by the end of the year. This team has offices in Menlo Park and San Francisco and works onsite 1 day weekly. Availability for this hybrid wor...

Conviva
Foster City, California

Staff Software Engineer, Full Stack. Our platform does what legacy observability and monitoring tools can’t: we eliminate the gaps between system performance, user experience, and engagement, enabling issue identification, impact assessment, and root cause resolution in seconds. Collaborate with pro...

Promoted
Rivian
Palo Alto, California

As a Staff Machine Learning Engineer, you will be a crucial part of our team, working alongside engineers, data scientists, and domain experts to build models at scale, predict vehicle performance, and optimize SW parameters throughout the vehicle's lifetime. As a Staff Machine Learning Engineer at ...

Guardant Health
Palo Alto, California
Remote

The Software team is looking for an experienced and energetic staff software engineer to build and enhance laboratory workflows within Laboratory Information Management System (LIMS) and across other systems and services that interact with LIMS to facilitate lab operations. We are building a unique ...

Celonis
Palo Alto, California

As a Full Stack Engineer, you’re responsible for delivering beautiful experiences to users. Passion and motivation to learn and grow as a software engineer. Join us if you want to grow in your engineering knowledge, career and leave your mark on a rapidly growing company. You will be at the frontier...

WePay
Palo Alto, California

Palo Alto, CA /EngineeringEngineering /Full-time/ HybridAs part of the Trust and Safety Organization we are passionate about building great software and looking for like-minded individuals who share this passion and who are continuously looking to learn and grow. Lead Software Engineer, Full Stac...

Visa
Foster City, California

Having full stack experience in front end technologies like React. Develop and maintain server-side logic, ensuring high performance and responsiveness to requests from the front-end. Hybrid employees can alternate time between both remote and office. Employees in hybrid roles are expected to work f...

Walmart
Sunnyvale, California

Option 1: Bachelor's degree in computer science, computer engineering, computer information systems, software engineering, or related area and 4 years’ experience in software engineering or related area. Master’s degree in Computer Science, Computer Engineering, Computer Information Systems, Softwar...