Hi, I'm Firmansyah
β~/profile$_
Architecting scalable Test Infrastructure and ensuring Software Reliability.
01.About Me
Senior Quality Engineer with over 5 years of experience. I focus on building reliable test automation frameworks and optimizing testing infrastructure to ensure high-quality software delivery.
I believe quality is not just about finding bugs, but designing systems and pipelines that make shipping code faster and safer.
{
"name": "Firmansyah",
"role": "Senior Quality Engineer",
"location": "Jakarta, Indonesia",
"experience": "5+ Years",
"core_skills": ["Automation Architecture", "CI/CD Automation", "Test Infrastructure", "Performance Testing"],
"mission": "To build scalable quality engineering cultures, not just tests."
}02.git log --experience
HEAD -> master, origin/master
- +Maintained legacy Java Appium automation for Android/iOS running on BrowserStack.
- +Optimized test execution strategy, successfully reducing regression time by over 50%.
- +Led the comprehensive framework migration from Java to WebdriverIO/TypeScript to modernize test architecture.
- +Migrated execution infrastructure from BrowserStack to self-hosted Appium Device Farm, significantly reducing costs.
- +Contributed directly to iOS codebase (Swift) to implement accessibility identifiers, ensuring 100% testability of UI components.
- +Established CI/CD pipelines using GitHub Actions, creating reusable composite actions to streamline testing workflows.
- +Implemented performance and load testing using k6 to identify bottlenecks and ensure system scalability during high-traffic events.
- +Created and maintained a centralized SDET Dashboard to visualize test metrics and return investment (ROI) of automation.
- +Mentored test engineers and established coding standards for the QA team.
- +Designed comprehensive test cases and scenarios covering critical academic workflows.
- +Executed comprehensive manual testing for LMS and UMS platforms.
- +Implemented automated regression testing using Katalon Studio to reduce manual repetitive tasks.
- +Collaborated with developers to reproduce and fix high-priority production bugs.
- +Created detailed test scenarios for new mobile app features to ensure full requirements coverage.
- +Performed manual testing for mobile applications (iOS/Android).
- +Facilitated User Acceptance Testing (UAT) sessions with stakeholders to ensure product readiness.
- +Developed rigorous test cases and scenarios for complex banking and insurance workflows.
- +Outsourced to Maybank: Focused on comprehensive manual testing for critical banking modules.
- +Outsourced to Prudential: Developed automated functional testing using HP Unified Functional Testing (UFT) and executed performance/load tests with JMeter.
- +Conducted rigorous manual testing for banking applications to ensure high standards of quality.
- +Created detailed test documentation including step-by-step screenshots for audit and validation purposes.
- +Executed and validated automated test suites provided by the automation team to verify regression stability.
>Installed_Packages
Loading system dependencies...
Automation & Performancev1.0.0
Languagesv1.0.0
Infrastructure & CI/CDv1.0.0
03../projects.sh
Executing build...
automated-test-generator
An AI-powered system that autonomously generates comprehensive test cases by parsing Product Requirement Documents (PRDs) and Technical Specifications. Streamlines the test planning phase for the entire engineering team.
report-history-action
Enhanced a GitHub Action to track and visualize test report history over time. Customized the core logic to support complex team workflows, enabling better visibility into regression trends across multiple environments.
Test Me!
This section is designed to be tested. It has delays, dynamic content, and hidden elements.
Target for your Playwright/Selenium scripts.
β οΈ Note: All successful states will automatically reset after 5 seconds.
Quality Engineering Strategy
How I approach quality beyond just writing code. A case study on the "Test Me" feature.
Risk Assessment & Mitigation
| Risk | Impact | Mitigation Strategy |
|---|---|---|
| Flaky Tests due to "Explicit Wait" | High | Use dynamic polling (e.g., `expect(loc).toBeVisible()`) instead of hard sleeps. |
| Input Validation Failure | Medium | Boundary testing on client-side & API schema validation. |
| Hidden Elements (Hover) | High | Ensure playwright hovers correctly; verify accessibility properties. |
Coverage Strategy (Pyramid)
- βUnit Tests (Jest): Logic for `TestMe` component state (loading, clicked, etc).
- βComponent Tests (React Testing Lib): Verify rendering and basic interactivity in isolation.
- βE2E Tests (Playwright): User workflows (Click -> Wait -> Success) and cross-browser visual checks.
04.Initialize Connection
Target: User needs Quality Engineering expertise
$ ping firmansyah
Pinging firmansyah [127.0.0.1] with 32 bytes of data:
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
> Connection established.
> Awaiting input...
Ready to optimize your delivery pipeline?