Skip to content

QA Software Engineer at Astragraphia IT

Hi, I'm Fattah.I test software for a living and build Roblox games on the side.

Fattah Widjaya Gandhi. SQA Engineer with 2.5+ years in banking, insurance, and enterprise QA. I build automation with Playwright and Bruno.

2 yr 8 mo in Quality AssuranceStudio Director at Lawak Studio
Portrait of Fattah Widjaya Gandhi

40/41

latest run

2.5+ yrs

in Quality Assurance

3

client projects in banking, insurance, and enterprise

50

test cases in the Lawak Store demo

4

Roblox games at Lawak Studio

About

From QA to automation, plus games.

I'm an SQA Engineer with 2.5+ years of testing banking, insurance, and enterprise applications. I plan and design tests, run SIT, UAT, regression, API, and performance testing, and often own QA on a project as the independent tester. I've automated with UFT One at work, and with Selenium, Serenity BDD, Rest Assured, and Appium in my bootcamp projects. Now I'm building with Playwright and Bruno in CI. On the side, I lead Roblox game projects at Lawak Studio.

What I bring to your team

Testing across the cycle

Functional, regression, SIT, and UAT testing on web and mobile, plus API testing.

Independent QA

I often own QA on a project and coordinate testing with development and business requirements.

Automation in CI

UFT One at work, Selenium and Rest Assured before that, and now Playwright and Bruno running in CI.

Product thinking from games

Directing Roblox projects teaches me to think about player experience, scope, and teamwork.

Experience

Where I test

2.5+ years testing banking, insurance, and enterprise applications, as the independent tester on projects and as part of QA teams.

  1. QA Software Engineer

    Astragraphia Information Technology

    Oct 2025 – Present

    1 yr 1 mo

    Manulife Insurance – EBClick

    Apr 2026 – Present

    Insurance web applications and their business workflows.

    • Own QA as the independent tester, from test planning and test case design to execution and defect validation.
    • Run API testing, SIT, UAT support, and regression testing.
    • Check stability and response times under different workloads with JMeter performance tests.
    • Track defects in Jira, and work directly with business analysts, developers, and stakeholders to support release delivery.

    Toyota Astra Motor (TAM) – Employee Self-Service

    Oct 2025 – Apr 2026

    An ESS platform that connects attendance, employee claims, company news, and employee services.

    • Created and ran test cases, with SIT, UAT, regression, and exploratory testing across the business modules.
    • Built and maintained automation test scripts with UFT One.
    • Monitored API performance in Grafana: response times, concurrent users, and peak activity.
    SITUATRegressionAPI testingJMeterUFT OneGrafanaJira
  2. Quality Assurance Engineer

    Nawa Data Solutions

    Feb 2023 – Aug 2024

    1 yr 7 mo

    Client: CIMB Niaga – Banking E-Procurement System

    Procurement from vendor management to payment: purchase requests and orders, tenders, approvals, budgets, contracts, and invoices.

    • Created and maintained test cases across the e-procurement modules.
    • Validated end-to-end procurement flows with multi-level approvals and business rules through SIT, regression, and exploratory testing.
    • Analyzed requirements with business analysts and developers, and tracked and verified defects in Jira.
    SITRegressionExploratoryRequirement analysisJira
  3. Test automation

    From UFT One and Java frameworks to Playwright and Bruno in CI

    Growing now

    • At work, I built and maintained automation test scripts with UFT One.
    • In my Alterra Academy QA bootcamp projects, I automated web, API, and Android tests with Selenium, Serenity BDD, Cucumber, Rest Assured, and Appium in Java.
    • Now I build with Playwright and Bruno: a suite that tests this site in GitHub Actions and blocks the deploy when a test fails.
    • I work with AI agents under rules I write. An expected result comes from the test case, never from the app, and I review every change before it counts.
    PlaywrightBrunoGitHub ActionsClaude CodeGitHub Copilot

Skills

Skills and tools

What I use in my QA work and in my game projects.

Testing

  • Test planning
  • Test case design
  • Manual testing (web & mobile)
  • Functional & regression
  • Exploratory testing
  • SIT & UAT
  • API testing
  • Performance testing
  • Defect management

QA Tools

  • Python
  • Playwright
  • Bruno API
  • Swagger UI
  • Google Docs
  • Jira

Ways of working

  • Independent QA ownership
  • Requirement analysis
  • Business process validation
  • Working with dev and business teams
  • Writing rules for AI agents

Game development

  • Roblox Studio
  • Game direction
  • Game design
  • Feature planning
  • Gameplay systems & UI
  • Level design review
  • Playtesting & player feedback
  • Team coordination

Projects

Automation you can check

Real suites with real results. You can run one of them yourself in the QA Lab.

Lawak Store screenshot
Run it live

Lawak Store

A demo shop with an admin panel, covered by 50 test cases.

Shows the full QA flow on one product: test case, automated run, evidence, and report. The shop runs in the browser with a mock backend, so the suite never touches a production system.

PlaywrightBruno CLIPythonGitHub ActionsCloudflare Workers

QA Lab

Don't take my word for it. Watch the tests run.

Real Playwright tests against Lawak Store, my demo shop: step screenshots, video, and a report, recorded on every run.

Latest run · 2026-10-12 · local run

lawak-store / regression

40/41 passedDuration 48.8s
  • TC-AUTH-001Sign in with the demo admin account0.8s
  • TC-AUTH-002Wrong password shows an error0.7s
  • TC-AUTH-003Invalid email format is rejected0.8s
  • TC-AUTH-004Disabled account cannot sign in0.7s
  • TC-AUTH-005Register a new customer account1.1s
  • TC-AUTH-006Register with an existing email is rejected0.9s
  • TC-AUTH-007Weak password is rejected1.0s
  • TC-AUTH-008Sign out ends the session1.2s
  • TC-AUTH-009A protected page asks for sign in, then returns to it0.8s
  • TC-CAT-001Shop lists all active products and hides drafts0.8s
  • TC-CAT-002Search finds a product by name0.7s
  • TC-CAT-003Category filter shows only that category0.7s
  • TC-CAT-004Sort by price from low to high0.8s
  • TC-CAT-005Search with no result shows an empty state0.6s
  • TC-CAT-006Product detail shows the price and stock0.7s
  • TC-CAT-007Out-of-stock product cannot be added to the cart0.7s
  • TC-CART-001Add a product to the cart0.9s
  • TC-CART-002Changing the quantity updates the totals0.9s
  • TC-CART-003Shipping is free from Rp 300.0000.7s
  • TC-CART-004Removing the last item shows an empty cart0.8s
  • TC-CART-005Quantity limit of 10 is enforced0.9s
  • TC-CHK-001Checkout with the test card creates an order1.2s
  • TC-CHK-002Empty required fields are reported1.0s
  • TC-CHK-003Declined card shows a payment error1.2s
  • TC-CHK-004Invalid card number is rejected1.2s
  • TC-CHK-005Expired card is rejected1.3s
  • TC-CHK-006Postal code must have exactly 5 digits8.6s
  • TC-ORD-001A new order shows in My orders2.0s
  • TC-ORD-002A customer cannot open another customer's order1.0s
  • TC-PRD-001Admin creates a product1.5s
  • TC-PRD-002Admin edits a product price1.0s
  • TC-PRD-003Admin deletes a product0.9s
  • TC-PRD-004Product form rejects invalid data1.1s
  • TC-PRD-005A draft product is hidden from the shop1.2s
  • TC-AOR-001A new customer order shows in admin Orders1.8s
  • TC-AOR-002Admin moves an order from Paid to Processing1.1s
  • TC-AOR-003Cancelling an order puts the stock back1.4s
  • TC-USR-001A customer cannot open admin pages1.0s
  • TC-USR-002A disabled customer cannot sign in1.4s
  • TC-USR-003Admin cannot change their own role or status0.8s
  • TC-DSH-001Admin dashboard shows the KPIs0.8s

One failure is expected: DEF-001 is planted on purpose, and TC-CHK-006 catches it.

Open QA LabLive runner on GitHub Actions: coming soon
Recorded steps01 / 05
TC-AUTH-001: sign in with the demo admin account

TC-AUTH-001: sign in with the demo admin account

Lawak Studio

Games we made

Lawak Studio publishes its games under the Lawak Gamehouse community on Roblox. I direct these projects with our programmers, level designers, and 3D artists.

Studio Director

Lawak Studio · Roblox game projects · Side project

  • Start game ideas, and set the direction and the player experience
  • Plan game design and features
  • Coordinate our programmers, level designers, and 3D artists
  • Build gameplay systems and UI flow hands-on in Luau, such as interaction and carry systems
  • Review gameplay flow and level design
  • Run playtests and iterate on player feedback

A side project I run seriously. It gives me hands-on practice in game direction, teamwork, and product thinking, and writing game systems in Luau keeps me close to code.

Illustrated loop: how a Lawak Studio game goes from idea to playtest, shown with our four Roblox games.
Become a Ghost Expedition thumbnail

Become a Ghost Expedition

You wake up as a ghost and travel toward Eternal Rest through 20 checkpoints. Explore, get past obstacles, and stay hidden, alone or with friends.

20 checkpointsGhost cosmeticsPlay with friends
Play on Roblox
Lawak Obstacle thumbnail

Lawak Obstacle

A funny obstacle course full of silly challenges and surprise traps. Every checkpoint brings something new.

20+ stagesComedy obbyPlay with friends
Play on Roblox
Gunung Lawak thumbnail

Gunung Lawak

A mountain-climbing semi-obby built around summit progression, exploration, and atmosphere. It runs seasonal events, such as an Indonesian Independence Day (HUT RI) theme.

Semi-obbyExplorationSeasonal events
Play on Roblox
Desa [Voice Chat] thumbnail

Desa [Voice Chat]

A village hangout with voice chat, where players take jobs, fish, and farm together.

HangoutVoice chatVillage life
Play on Roblox
Lawak Gamehouse logo

Lawak Gamehouse

Play. Explore. Have fun. The Roblox community where Lawak Studio games live.

Education & certification

Foundations

Tarumanagara University

Bachelor of Computer Science (S.Kom.), Jakarta

2018 – 2022

Alterra Academy

Quality Assurance Engineer Bootcamp (certification)

2022

Contact

Let's talk about QA or a game idea.

For QA work or collaboration, email is the fastest way to reach me. For game updates, join the Discord.