At a Glance
- Tasks: Lead load testing for a critical system release and design automated tests.
- Company: Join Monolith AI, a fast-paced tech company focused on innovation.
- Benefits: Competitive pay, flexible hours, and a chance to work with cutting-edge technology.
- Why this job: Make a real impact by optimising system performance in a dynamic environment.
- Qualifications: 4+ years in QA, experience with load testing tools, and strong Python skills.
- Other info: Fast-paced, collaborative team with opportunities for growth and learning.
The predicted salary is between 500 - 1500 ÂŁ per month.
Monolith AI is seeking an experienced QA Engineer to lead load testing efforts for a critical system release focused on improving concurrency and high request load handling. This fastâpaced, shortâterm engagement requires someone who can quickly understand complex distributed systems, design comprehensive load tests, and work collaboratively with a rapidly growing engineering team to ensure our new environment meets performance requirements.
Primary Responsibilities
- Design and Implement Automated Load Testing Framework
- Develop comprehensive load tests for FastAPI endpoints, Temporal workflows, activities, and AWS service interactions.
- Create realistic test scenarios simulating concurrent workflow execution patterns, including graphâbased workflow orchestration.
- Build automated test suites that measure system behavior under varying concurrency levels and request loads.
- Perform Performance Analysis and Bottleneck Identification
- Monitor and analyze system performance across the entire stack (API layer, Temporal workers, AWS services).
- Identify concurrency limitations in Temporal workflow execution, AWS service limits (Athena, ECS), and interâcomponent communication.
- Document performance characteristics including response times, throughput limits, and failure modes under load.
- Collaborate on NonâFunctional Requirements (NFR) Definition
- Work with Customer Success and Product teams to understand business requirements and translate them into measurable performance criteria.
- Iterate on acceptable concurrency thresholds, latency targets, and throughput requirements.
- Validate that proposed NFRs are realistic and achievable given architectural constraints.
- System Documentation and Knowledge Extraction
- Understand the existing system through code review, discussions with the development team, and exploratory testing.
- Create clear documentation of test methodologies, results, and recommendations for future testing.
- Recommendation and Optimization Guidance
- Provide actionable recommendations for removing identified bottlenecks.
- Suggest configuration optimizations for Temporal (worker pools, task queues) and AWS services (Athena concurrency, ECS capacity).
- Rapid Communication and Status Reporting
- Maintain daily/frequent communication with the Tech Lead regarding project progress, blockers, and findings.
- Quickly escalate issues that could impact the aggressive timeline.
- Present findings and recommendations to technical and nonâtechnical stakeholders.
- CrossâComponent Integration Testing
- Test complex scenarios involving graph execution triggering node workflows across multiple system boundaries.
- Validate S3 read/write operations under concurrent load.
- Ensure interâcomponent communication (API â Temporal, Temporal Activity â API triggers) performs reliably at scale.
- Key Performance Indicators
- Complete automated load test suite covering all critical components within first 3 weeks.
- Execute baseline and progressive load tests identifying maximum sustainable concurrency levels.
- Identify and document top 5â7 performance bottlenecks with clear impact analysis.
- Provide actionable remediation recommendations with estimated effort and impact for each bottleneck.
- Collaborate with stakeholders to define measurable NFRs within first 2 weeks.
- Validate system meets or document gaps against agreed NFR criteria by project end.
- Deliver comprehensive test documentation, results analysis, and system performance characteristics.
- Conduct knowledge transfer sessions ensuring team can maintain and extend testing framework.
- Project Velocity and Communication
- Meet weekly milestone targets in this fastâpaced 2âmonth engagement.
- Maintain proactive communication rhythm (daily standups, weekly detailed reports to Tech Lead).
Required Qualifications
- 4+ years of experience in QA/performance testing roles.
- 2+ years of handsâon experience with load testing distributed systems and microservices architectures.
- Proven experience with load testing tools (e.g., k6, JMeter, Locust, Gatling, Artillery).
- Experience testing workflow orchestration systems (Temporal, Airflow, Prefect, or similar).
- Demonstrated ability to test systems integrating with AWS services (particularly Athena, ECS, S3).
- Strong proficiency in Python (required for test automation and working with FastAPI/Temporal).
- Experience with REST API testing and performance validation.
- Understanding of distributed systems concepts: concurrency, queueing, backpressure, rate limiting.
- Familiarity with AWS infrastructure and service limits.
- Experience with monitoring and observability tools (Prometheus, Grafana, Datadog, or similar).
- Proficiency with Git and CI/CD pipelines.
- Ability to read and understand code in order to design effective tests.
Immediate Availability
- Ability to start in early January 2025 and commit to focused 3âmonth engagement.
- Availability for fullâtime contract work during project duration.
Preferred Qualifications
- Direct experience with Temporal.io (workflows, activities, workers).
- Experience with containerized workloads and Docker/ECS.
- Prior work in fastâpaced startup or scaleâup environments.
- Experience with infrastructureâasâcode (Terraform, CloudFormation).
- Background in Site Reliability Engineering (SRE) or DevOps practices.
- Familiarity with data processing pipelines and analytics systems.
- Previous contract/consulting experience with rapid knowledge acquisition.
- Experience with graphâbased workflow systems or DAG execution engines.
- Knowledge of AWS service limits and optimization strategies.
SelfâDirection and Initiative
- Ability to operate independently in an ambiguous, fastâmoving environment with minimal documentation.
- Proactive problemâsolving mindset; doesnât wait for perfect information before taking action.
- Comfortable making pragmatic decisions quickly in a timeâconstrained project.
Communication and Collaboration
- Exceptional communication skills for extracting knowledge through conversations with existing team members.
- Ability to translate technical findings into clear, actionable recommendations for diverse audiences.
- Comfortable asking clarifying questions and challenging assumptions respectfully.
- Strong written communication for documentation and status updates.
Adaptability and Learning Agility
- Quick learner who can rapidly understand complex, poorly documented systems.
- Flexible and comfortable with changing priorities in a 15âperson team thatâs doubling in size.
- Thrives in fastâpaced environments with aggressive timelines.
Pragmatism and Results Orientation
- Focused on delivering practical, actionable outcomes within tight timeframes.
- Understands the balance between thoroughness and speed in a 2âmonth engagement.
- Comfortable with "good enough" when perfect isnât achievable within constraints.
Stakeholder Management
- Skilled at managing expectations with technical leadership about realistic timelines and tradeâoffs.
- Diplomatic when delivering difficult news about performance limitations or bottlenecks.
- Collaborative approach when working with CS and Product on NFR definition.
Key Challenges in This Role
- Rapid Knowledge Acquisition with Limited Documentation
- The existing system lacks comprehensive documentation, requiring you to quickly build understanding through code review, system exploration, and frequent discussions with the development team.
- Success requires comfort with ambiguity and strong investigative skills.
- Aggressive Timeline with High Impact
- A 3âmonth timeline to design tests, execute comprehensive load testing, identify bottlenecks, and deliver actionable recommendations is extremely tight.
- Must balance thoroughness with pragmatism; prioritize ruthlessly to ensure critical areas are covered.
- Complex Distributed System with Multiple Integration Points
- The system involves multiple layers (FastAPI, Temporal, AWS services) with complex interâcomponent communication patterns (graph â node workflows).
- Must understand the entire stack sufficiently to design realistic, comprehensive load tests that expose realâworld bottlenecks.
QA Engineer - Load Testing Specialist (2 months contract) in London employer: Monolith
Contact Detail:
Monolith Recruiting Team
StudySmarter Expert Advice đ¤Ť
We think this is how you could land QA Engineer - Load Testing Specialist (2 months contract) in London
â¨Tip Number 1
Get to know the company and its tech stack before your interview. Familiarise yourself with their products, especially how they handle load testing and AWS services. This will help you tailor your answers and show that you're genuinely interested in the role.
â¨Tip Number 2
Practice your technical skills! Brush up on your Python and load testing tools like k6 or JMeter. Being able to discuss your hands-on experience confidently can really set you apart from other candidates.
â¨Tip Number 3
Prepare some questions for your interviewers about their current challenges with load testing and performance. This shows that you're proactive and ready to contribute solutions right from the start.
â¨Tip Number 4
Donât forget to apply through our website! Itâs the best way to ensure your application gets seen by the right people. Plus, it shows youâre serious about joining the team.
We think you need these skills to ace QA Engineer - Load Testing Specialist (2 months contract) in London
Some tips for your application đŤĄ
Tailor Your Application: Make sure to customise your CV and cover letter for the QA Engineer role. Highlight your experience with load testing and distributed systems, and donât forget to mention any relevant tools youâve used like k6 or JMeter.
Showcase Your Skills: In your application, be sure to showcase your technical skills, especially in Python and AWS services. We want to see how you can apply these skills to design effective load tests and identify bottlenecks.
Be Clear and Concise: When writing your application, keep it clear and to the point. Use bullet points where possible to make it easy for us to see your key achievements and experiences related to performance testing.
Apply Through Our Website: We encourage you to apply directly through our website. Itâs the best way to ensure your application gets into the right hands and shows us youâre serious about joining our team!
How to prepare for a job interview at Monolith
â¨Know Your Tools Inside Out
Make sure you're well-versed in the load testing tools mentioned in the job description, like k6 or JMeter. Familiarity with these tools will not only help you answer technical questions but also demonstrate your hands-on experience.
â¨Understand the System Architecture
Before the interview, take some time to research and understand distributed systems concepts, especially those related to concurrency and AWS services. Being able to discuss how these elements interact will show that you can hit the ground running.
â¨Prepare Realistic Test Scenarios
Think about how you would design load tests for FastAPI endpoints and Temporal workflows. Be ready to share specific examples of test scenarios you've created in the past, as this will highlight your practical experience and problem-solving skills.
â¨Communicate Clearly and Confidently
Since this role involves collaboration with various teams, practice explaining complex technical concepts in simple terms. Being able to communicate effectively with both technical and non-technical stakeholders will set you apart from other candidates.