Senior Software Performance Engineer
General Motors10 months ago
Austin, TX, United States
Remote
Full-time
Junior Level (1-3 years)
Job Description
Position Overview
We’re seeking a passionate and experienced Senior Performance Engineer to own the overall performance of our systems and solutions. In this role, you will lead the optimization of software and systems to improve site speed, scalability, reliability, and stability. You will analyze metrics from various monitoring tools and work closely with development teams and architects to design and implement solutions that enhance the performance of web sites, APIs, database queries, and caching strategies. As a technical leader, you will also mentor junior engineers and help drive best practices in performance engineering throughout the organization.
Key Responsibilities
- Own the performance observability for production and lower environments, identifying and acting on concerning trends.
- Develop competency across our complete web technologies stack (client, framework, and services).
- Weigh architectural trade-offs and apply synchronous and asynchronous design patterns.
- Monitor, assess, and analyze the holistic performance of applications using benchmarking tools.
- Identify bottlenecks, lead root cause analyses, collaborate with developers, automate processes, and ensure tools are in place to meet performance requirements from design to deployment.
- Enhance performance coverage by consulting with developers to identify areas for improvement and expansion.
- Investigate and diagnose performance issues to determine their root causes.
- Document performance results and share actionable insights with developers.
- Develop datasets and workloads that accurately mirror the production environment.
- Analyze CPU utilization, memory usage, network usage, garbage collection, and DB reports to verify application performance.
- Research and implement best practices, methodologies, and tools for performance testing.
- Explore and pitch product ideas and tech initiatives with cross-functional teams.
- Drive UI performance optimization and ensure cross-browser compatibility.
- Stay current with emerging technologies and trends and evaluate their potential for adoption.
- Mentor junior team members and contribute to team growth and development.
Required Qualifications
- Bachelor’s degree in computer science or a related field.
- 5+ years of experience in performance and scalability engineering for cloud-hosted applications.
- Strong proficiency with performance tools such as K6 and JMeter.
- Solid knowledge of monitoring and observability tools like Datadog, Grafana, and Dynatrace.
- Experience in scripting languages (e.g., Java, JavaScript, Python).
- Expertise in virtualization, storage, and networking.
- Ability to profile all layers of the technology stack (software, OS, network) and optimize complex applications.
- In-depth knowledge of Cloud and Container ecosystems (Azure, Docker, Kubernetes).
Preferred Qualifications
- Master’s degree in computer science or a related field.
- Hands-on experience with chaos engineering tools such as Gremlin.
- Experience with caching layer performance tuning.
- 5+ years of proven performance engineering expertise in complex environments.
- Excellent communication and collaboration skills to work effectively with developers, product managers, and business stakeholders.
- Deep expertise in database performance tuning, focusing on optimizing complex SQL queries.
- Strong analytical skills for identifying performance issues and resolving code-level bottlenecks.
- Hands-on experience with observability and monitoring tools, with a preference for proficiency in Datadog.
- Familiarity with performance testing tools such as K6, NeoLoad, BlazeMeter, and LoadRunner.
Required Skills
Kubernetes
Python
Performance Testing
Java
K6
Virtualization
Grafana
JMeter
Scalability Analysis
Dynatrace
Cloud & Container Ecosystem
Performance Engineering
Azure
Docker
JavaScript
Observability
Performance Optimization
Datadog
Load Testing