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.
If an employer mentions a salary or salary range on their job, we display it as an "Employer Estimate". If a job has no salary data, Rise displays an estimate if available.
Are you a passionate and experienced Staff Software Engineer - Full Stack (Performance Engineering) ready to tackle exciting challenges? Join us at Open VisaNet in Foster City, where we prioritize building resilient and high-availability applications in the world of payment processing. In this role, you will dive into hands-on performance and chaos engineering activities, including performance testing, code instrumentation, and system monitoring. As a vital member of our performance engineering team, you will develop detailed performance plans and models for scalable, low-latency infrastructures. Collaboration is key; you'll work closely with Development, Testing, and Project Management teams to ensure that our projects meet stringent performance criteria. You’ll get the chance to execute load-testing tools to assess our most critical payment applications and lead chaos-resiliency experiments to identify potential weaknesses. With your proficiency in Go Benchmarks and Profiling, you will analyze trends and metrics, providing actionable insights that will enhance application performance. Furthermore, you will create comprehensive performance engineering reports, guiding our teams on best practices and innovative solutions. As we work together to keep our systems fault-tolerant and highly available, your input will be invaluable in refining our technical approaches. In this hybrid position, enjoy the flexibility of working from home while also engaging with us in the office to maximize collaboration and innovation!
Join Splash as an Applied Machine Learning Engineer to innovate and enhance music creation tools using AI.
Avaloq seeks a Software Engineer to enhance Core Banking modules while supporting clients and contributing to product improvements.
Join ResortPass as a Senior Software Engineer to redefine luxury hotel experiences through innovative product development.
Join Visa as a Software Engineer and help innovate payment technology on a global scale.
Join our remote team as a Java developer skilled in AWS and Terraform, focusing on building high-quality cloud applications.
Visa Inc. operates as a payments technology company worldwide. The company facilitates commerce through the transfer of value and information among consumers, merchants, financial institutions, businesses, strategic partners, and government entiti...
9499 jobsSubscribe to Rise newsletter