ACCELDATA – Sr SDET Interview (Round 2)
ACCELDATA – Sr SDET Interview (Round 2)
Questions & Sample Answers
Overview: These were the actual questions asked to me in the Acceldata Senior SDET (Round 2) interview.
My experience level at the time of the interview was 4+ years.
This round focused heavily on:
-
Framework architecture
-
Concurrency & rate limiting
-
Distributed system testing
-
Kubernetes & Big Data scenarios
-
Real-world debugging
The discussion tested both depth and structured thinking.
Question 1: Tell me briefly about yourself.
Answer:
I have 4+ years of experience in QA and Automation, primarily focused on API automation using Python and Pytest.
I have worked in microservices-based systems and have experience integrating automation into CI/CD pipelines.
I also have exposure to Docker, Kubernetes, and cloud environments, along with hands-on debugging of production-like issues.
Question 2: Explain your Tech Stack and Roles & Responsibilities.
Answer:
Tech Stack:
-
Python, Pytest
-
REST APIs
-
Jenkins
-
Docker
-
Kubernetes (basic exposure)
-
SQL
-
AWS exposure
Roles & Responsibilities:
-
Requirement analysis
-
Automation framework development
-
CI/CD integration
-
Debugging test failures
-
DB validation
-
Handling production issues
-
Cross-team collaboration
Question 3: Explain your automation framework.
Answer:
My framework is modular and scalable.
It includes:
-
Reusable API client layer
-
Utilities and helper modules
-
Centralized configuration management
-
Logging and reporting support
-
Environment-based execution
-
CI/CD integration
The design follows separation of concerns to ensure maintainability and scalability across microservices.
Question 4: What technical challenges did you face while building the framework?
Answer:
Some challenges included:
-
Managing environment-specific configurations
-
Handling dynamic test data
-
Managing microservice dependencies
-
Flaky tests due to timing issues
-
Rate limiting during parallel execution
-
Standardizing logging across modules
These were resolved using abstraction, retry mechanisms, proper fixture design, and structured logging.
Question 5: What is the difference between 401 and 403?
Answer:
401 – Unauthorized
-
Authentication failed
-
Token missing or invalid
403 – Forbidden
-
Authentication succeeded
-
But user does not have permission
Question 6: Are you aware of rate limiting? How do you handle 200 requests/min limit when tests run in parallel?
Answer:
Yes.
If there is a limit of 200 requests per minute:
Handling strategies include:
-
Implement retry mechanism with exponential backoff
-
Introduce request throttling
-
Use shared rate limiter logic
-
Reduce parallel threads
-
Mock dependent APIs if possible
The goal is to avoid overwhelming the service and reduce flakiness.
Question 7: Have you faced connection pool exceptions?
Answer:
Yes.
This usually happens due to:
-
Too many concurrent connections
-
Improper connection closing
-
Small connection pool size
Handling includes:
-
Increasing pool size appropriately
-
Ensuring proper connection closure
-
Controlling parallel execution
Question 8: Have you faced concurrency exceptions? How did you handle them?
Answer:
Yes, especially during parallel test execution.
Common causes:
-
Shared test data
-
DB write conflicts
-
Shared mutable state
Handling strategies:
-
Generate unique test data
-
Avoid shared state
-
Use transaction isolation
-
Proper synchronization where required
Question 9: Merge two sorted arrays into one sorted array without duplicates. Explain time and space complexity.
Answer:
Approach:
-
Use two pointers
-
Compare elements
-
Add smaller element to result
-
Skip duplicates
Time Complexity:
O(n + m)
Space Complexity:
O(n + m)
Question 10: How would you test a Spark ETL pipeline running on Kubernetes (HDFS → ADLS)?
Answer:
High-level testing approach:
1. Infrastructure Readiness
-
Validate Kubernetes cluster health
-
Verify Spark pods scheduling
-
Validate storage connectivity
-
Check IAM and permissions
2. Application Readiness
-
Verify Spark job configuration
-
Validate environment variables
-
Validate resource allocation
3. Data Validation
-
Validate input data format
-
Schema validation
-
Record count validation
-
Transformation logic validation
-
Output data consistency
4. End-to-End Flow
-
Trigger job
-
Monitor logs
-
Validate job completion
-
Validate output storage
Question 11: Before processing starts, how do you validate complete readiness?
Answer:
-
Validate infra setup (K8s, storage, networking)
-
Validate application configuration
-
Validate permissions and secrets
-
Validate resource allocation
-
Validate connectivity between components
-
Run a smoke job before full execution
Question 12: Data store is on different machine and Kubernetes is running in EKS. How will they communicate?
Answer:
Communication through:
-
VPC configuration
-
Security groups
-
Network routing
-
DNS resolution
-
Exposed service endpoints
Ensure ports and firewall rules allow communication.
Question 13: Have you worked with Big Data / Hadoop?
Answer:
I have basic exposure.
Understanding includes:
-
HDFS concepts
-
Distributed data storage
-
Spark job flow
-
ETL pipelines
My focus has been more on testing strategy rather than development.
Question 14: Linux commands you have used.
Answer:
-
ls
-
cd
-
pwd
-
grep
-
cat
-
tail -f
-
ps
-
top
-
chmod
-
kill
Used mainly for debugging and log inspection.
Question 15: kubectl commands you have used.
Answer:
-
kubectl get pods
-
kubectl describe pod
-
kubectl logs
-
kubectl get services
-
kubectl get deployments
Used for monitoring and debugging Kubernetes workloads.
Question 16: Why is Kubernetes more reliable than plain Docker deployment?
Answer:
Docker:
-
Runs containers
-
Single-host management
Kubernetes:
-
Self-healing
-
Auto-scaling
-
Rolling deployments
-
Load balancing
-
Resource management
It provides production-grade orchestration.
Question 17: Are you aware of Docker Compose?
Answer:
Yes.
Docker Compose:
-
Used for multi-container setup
-
Defined using docker-compose.yml
-
Mostly used in local development
-
Not suitable for large-scale production orchestration
Key Takeaways
-
Round 2 focuses on architecture maturity.
-
Concurrency and rate limiting scenarios are important.
-
Distributed system testing requires layered validation.
-
Infrastructure awareness differentiates senior candidates.
-
Clear structured answers create strong impact.
Comments
Post a Comment