QA Engineer with an Engineering Background

QA Engineer Portfolio

QA Engineer with an Engineering Background

I don’t just test features — I analyze systems, identify risks, and validate behavior end-to-end. Focused on building reliable and robust software systems.

Test & Validation Engineer | QA Automation | Embedded Systems

About

I am a QA engineer with a strong engineering background, focused on understanding how systems actually behave — not just how they are supposed to work.

I approach testing as a structured process: analyzing system architecture, identifying critical risks, and designing targeted test strategies.

My goal is to validate system behavior and improve overall reliability — not just detect bugs.

Projects

Selected work

E2E Test Automation Suite | Practice Software Testing

Context

  • Robust End-to-End automated testing suite designed to validate functional requirements, edge cases, and user workflows for a modern e-commerce web application.

My Role

  • Designed and implemented an automated E2E testing framework from scratch using Playwright and TypeScript.
  • Applied the Page Object Model (POM) design pattern to separate test execution logic from UI element locators.
  • Automated critical user journeys including authentication, multi-criteria catalog filtering, dynamic cart management, and checkout flows.

Testing Strategy

  • Prioritized stable data attributes (such as data-test) over fragile structural CSS selectors to ensure test resilience.
  • Configured cross-browser execution support (Chromium, Firefox) with parallel worker management.
  • Integrated automated execution pipelines using GitHub Actions for CI/CD validation.
  • Validated data persistence and user history by verifying generated invoices post-checkout.

Key Risks Identified

  • UI element fragility leading to flaky tests due to dynamic changes or unstable locators.
  • State management inconsistencies across complex multi-step checkout and cart workflows.
  • Authentication and authorization failures during session state transitions.
  • Cross-browser rendering and performance discrepancies.

Results & Findings

  • Built a stable and maintainable automated suite covering core e-commerce business processes.
  • Achieved reliable execution across multiple browsers with optimized parallel processing.
  • Eliminated flaky test behaviors through stable selector strategies and proper asynchronous waits.

Technologies

Playwright 1.62.0TypeScriptPage Object Model (POM)CI/CDGitHub ActionsE2E Testing

Key Learnings

  • Mastered modern E2E test automation architecture using Playwright and TypeScript.
  • Strengthened expertise in implementing scalable Page Object Model designs.
  • Learned to build resilient CI/CD automated testing pipelines for web applications.

Online Banking Consulting Platform

Context

  • Web-based platform managing interactions between clients, consultants, and administrators, including role-based access, document workflows, and project tracking.

My Role

  • Worked across backend development and QA validation.
  • Designed and executed API testing strategy for core system workflows.
  • Validated role-based system behavior across Admin, Client, and Consultant flows.

Testing Strategy

  • Designed structured API test scenarios covering authentication, authorization, and CRUD operations.
  • Validated role-based access control by simulating multiple user roles and permission boundaries.
  • Tested critical workflows involving projects, documents, and user interactions.
  • Automated API checks using Postman and Newman, including response validation, timing analysis, and negative testing.
  • Verified system behavior under invalid and unauthorized access scenarios.

Key Risks Identified

  • Unauthorized access due to incorrect role-based access control.
  • Data inconsistency across interconnected entities (projects, documents, users).
  • Performance degradation on authentication and critical endpoints.
  • Incorrect handling of edge cases in multi-role workflows.

Results & Findings

  • Identified a performance bottleneck on the authentication endpoint (~2s response time).
  • Validated robustness of role-based access control across multiple user roles.
  • Ensured consistency of data across project and document workflows.
  • Strengthened API reliability through structured validation scenarios.

Technologies

ReactSpring BootFirebasePostmanNewman

Key Learnings

  • Developed structured API testing strategies for real-world backend systems.
  • Improved ability to identify security and access control risks.
  • Learned to validate complex multi-role workflows and data consistency.

Interactive Automotive Training Application (DSG System)

Context

  • Real-time system combining ECU data acquisition (CAN/UDS), embedded processing, and a visualization interface to analyze DSG (Dual-Clutch Transmission) behavior in both real and simulated conditions.

My Role

  • Developed embedded data acquisition using ESP32 with CAN bus communication.
  • Designed and implemented a Flutter application for real-time vehicle data visualization.
  • Led system-level validation of data consistency from ECU to user interface.

System Validation Approach

  • Reverse engineered CAN/UDS communication to identify valid parameter IDs (PIDs).
  • Analyzed raw ECU frames and validated decoding logic to ensure accurate physical values.
  • Verified end-to-end data flow from ECU → ESP32 → Firebase → application.
  • Designed validation scenarios comparing real-time data and simulation outputs.
  • Tested system behavior under unstable communication conditions.

Key Risks Identified

  • Incorrect PID mapping leading to false system interpretation.
  • Data corruption or delay due to unstable CAN communication.
  • Decoding errors causing incorrect physical values (RPM, temperature, gear).
  • Mismatch between real-time data and simulation mode.

Results & Findings

  • Identified and corrected inconsistencies in ECU data mapping and decoding logic.
  • Validated reliability of real-time data visualization across the full system chain.
  • Ensured stable communication between embedded system and ECU using CAN/UDS.
  • Built a consistent simulation mode aligned with real-world system behavior.

Technologies

FlutterESP32CAN BusUDS ProtocolSOLIDWORKSBlenderPlatformIOFirebase

Key Learnings

  • Developed a system-level validation mindset for complex real-time systems.
  • Learned to analyze low-level communication protocols and their impact on system behavior.
  • Improved ability to detect hidden risks in data pipelines and ensure data reliability.

Testing Mindset

How I approach testing

I approach testing with an engineering mindset, focusing on understanding systems before validating them.

01

Understand the System

Before testing, I focus on understanding how the system actually behaves — including its architecture, data flow, and interactions between components.

02

Identify Risks

I identify critical areas where failures can impact the system, such as security vulnerabilities, data inconsistencies, and performance bottlenecks.

03

Design Test Scenarios

I design structured test scenarios that cover both expected use cases and edge cases, ensuring realistic system validation.

04

Validate System Behavior

I validate system behavior through API and functional testing, ensuring consistency between frontend, backend, and real data.

05

Improve Reliability

I analyze test results to detect issues and improve system reliability, not just to confirm that features work.

Testing is not just about finding bugs — it's about understanding systems deeply and ensuring they behave reliably under real conditions.

Contact

Let’s connect

Open to QA / Test & Validation Engineering opportunities — onsite in Tunisia, remote, or international. If you're working on complex systems and need reliable validation, let's connect.

Available for immediate opportunities.