I’ve been one for the past 8 years or so in 3 different companies/product types/tech stacks/business domains.
My experiences varied a bit hence the larger amount of things I’ve done.
I am quite proud of most achievements and have really good memories about them:
- Build custom scripts/tools for data analysis, log parsing, in depth investigations;
- Bug-fixes, small code changes, code peer reviews, refactoring, merges, and other small things like repository/branching management and control, pinpointing bugs in source code, identifying and updating/migrating deprecated libraries; By chance I had when I left one team the second most code changes made during 3 years out of 8 developers.
- Packaging the solution and deploying to pre-prod and prod environments (been a release manager for 3 years);
- Automated frameworks and checks creation, pipelines maintenance and integration into the workflow;
- Functional analysis and feasibility studies for various product changes and ideas, suggesting or providing implementation ideas, with stakeholders and managers - before they even reached the development team;
- Data analytics and user-application behavior study to identify improvements;
- Production systems monitoring and deep investigations to identify production specific issues missed (across multiple systems/products);
- Management of mobile apps in the corresponding Apple and Google Store accounts;
- Creating PoC and MvP products to backup the unavailable development team while keeping the business continuity flowing and helping gain new contracts;
- Administration of the integrated payment system platform, template adjustments (and application management);
- Supporting new architects and solution designers with my broad knowledge of the product (an architect was so impressed that he wanted me to work under his team on a new product as a technical analyst)
- Technical platform support and managing most of the technical tickets/requests;
- Reverse engineering several external 3rd party provided APIs, finding how they work, problems, document them and help developers/BA/PM to manage requirements creation and integration;
- Creating and maintaining product monitoring dashboards;
- Client/user data onboarding into the platform (custom data mappings/ETL management);
- Introduce a localization tool, management of the i18n via angular and integration, content translations;
- Writing, or maintaining specifications and replacing/being the PM for about 1 year in total over time;
- Supporting internal teams and integrated products in the operations (favorite of the business operations manager who wanted me to replace him when he retired);
- …and some testing related activities;
adaptability, initiative, leadership at times, collaboration, resilience, critical thinking, systems thinking, learning capabilities, solution orientation, ownership;
I was so scared when I started to go past testing. Then the mindset change/adaptation to other kinds of roles was a challenge. I had to learn plenty of technical and business domain and specific company details from the people around me and most of it alone. I relied on starting to find an actual problem worth fixing, making it explicit, finding the value of improvement, then ways to do the change.
Keep in mind the distinction between old/traditional quality engineering and modern quality engineering work. They sound the same by the name, but behind the curtains are wildly different.
Background: skeptic, critical thinker, explorer, experimenter as a child; masters in software systems engineering; amateur tester/competitor for about 3 years (won several dozen contests); pro tester/automation for 7+ years in different companies, countries, business, setups/stacks, dev & test methodologies / schools(bbst/istqb/rst).