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

Popular posts from this blog

ACCELDATA – Sr SDET Interview (Round 1)

ACCELDATA – Senior SDET Interview (Round 3)