Bruno Metzker Salomon, Developer in Porto, Portugal
Bruno is available for hire
Hire Bruno

Bruno Metzker Salomon

Verified Expert  in Engineering

Quality Assurance Developer

Location
Porto, Portugal
Toptal Member Since
April 23, 2019

Bruno is a highly skilled quality engineer who strives to impact organizations by driving quality processes throughout the software development lifecycle. Over many years in the industry, Bruno has worked with a wide array of clients in different segments—including US Fortune 500 companies—making an impact by allowing teams to deliver high-value software faster through test automation practices.

Portfolio

Ci&T
Azure DevOps, Espresso, Appium, Robot Framework, Python, Java, Spring Boot...
CI&T
Amazon Web Services (AWS), Microsoft SQL Server, Python, TypeScript, JavaScript...
Avenue Code
Amazon Web Services (AWS), MySQL, Git, TypeScript...

Experience

Availability

Part-time

Preferred Environment

Jenkins, Apache JMeter, Git, Java, WebDriver

The most amazing...

...project I've built is a highly scalable UI test automation framework based on an open source test runner by leveraging AOP practices and event-driven patterns.

Work Experience

Quality Technical Lead

2021 - PRESENT
Ci&T
  • Managed a team of 10+ quality engineers in test automation practices and agile testing practices to enable continuous delivery.
  • Designed and implemented a solution to enable automated system-level testing for microservices based on the chain of responsibility design pattern, allowing pre-/post-processing of requests in a modular and extensible way.
  • Designed and implemented a solution to provide concurrency control in order to allow tests to run in parallel while keeping the ability to comply with its preconditions in a context where resources were shared (e.g., user accounts).
  • Designed and implemented a pipeline stage on Azure Pipelines to run automated tests on microservice’s build pipelines.
  • Designed and implemented a pipeline stage on Azure Pipeline to distribute workload to several pipeline agents to parallelize test suites' execution targeting multiple geographic zones on a global application.
  • Designed and implemented a solution to provide continuous automated end-to-end testing for an Android application. It integrated with VS's App Center and Browserstack to run tests on several device profiles.
  • Designed and implemented integration with Jira’s Zephyr Scale plugin for test management in order to provide a simple way to create/update test cases, plan test cycles and retrieve data regarding test efforts for analysis.
  • Elaborated a testing strategy based on the test pyramid concept for optimal testing coverage. The process leveraged containerization and open source solutions to provide stubbing and provision of test instances of external dependencies.
Technologies: Azure DevOps, Espresso, Appium, Robot Framework, Python, Java, Spring Boot, Docker, WireMock, MongoDB, Mobile App Testing, Zephyr, RabbitMQ, Testcontainers, JUnit, Cucumber, Node.js

Software Engineer in Test

2018 - PRESENT
CI&T
  • Constantly attended grooming sessions with stakeholders to analyze business requirements, discuss new features, and look deeply into desired user behavior to drive application enhancement and new features.
  • Refactored existing end-to-end test framework to leverage design patterns to promote better code reuse and readability and enforce the single responsibility principle. The framework was built in Java, Selenium, and TestNG at its core.
  • Built end-to-end test framework’s integration with Hashicorp’s Vault service to discover credentials to access external database resources at runtime.
  • Defined stack used to automate test scenarios for an Angular front-end application. Automated tests are created at a unit, component, and system level using Jasmine, Protractor, and Cucumber. Express.js was also used to serve mocked responses.
  • Built automated test scripts for functional compliance of microservices using Java, REST Assured, and Spring Boot test templates and profiles.
  • Hosted demo sessions to stakeholders detailing features delivered sprint by sprint during the MVP phase.
  • Supported critical on-site deliveries for a Fortune 500 US company, managing and reporting defects.
  • Created a custom JUnit Runner to enable a mobile Android app to be set up targeting a mock server through dependency injection. This allowed the team to move forward with espresso test creation while another team built the back-end functionality.
  • Set up a structure to build component tests in microservices using Spring Boot. This enabled test packages to leverage application beans/components while being able to set up their own.
Technologies: Amazon Web Services (AWS), Microsoft SQL Server, Python, TypeScript, JavaScript, Angular, Docker, Kubernetes, Jenkins, Java

QA Engineer

2017 - 2018
Avenue Code
  • Created a UI test framework based on WebDriverIO and TypeScript that heavily relied on design patterns to promote code reuse to enable and encourage QA Engineers to include test automation in their activities.
  • Allowed, with that application, for test scripts to be built once and executed against the target application in several resolutions as responsiveness was a heavy business requirement.
  • Trained QA engineers across multiple delivery squads to use the said framework to automate test cases throughout their project’s deliveries.
  • Created test scripts using Cucumber, TypeScript, and WebDriverIO for an application built in a component-based approach using Vue and delivered over Adobe Experience Manager.
  • Automated test scenarios for REST APIs using open source framework Karate (https://github.com/intuit/karate).
  • Screened QA candidates for the company, participating in evaluating candidate resumes, hosting interviews on-site, and assessing project deliveries.
  • Taught introductory programming classes to children of a partner state school as a part of the company’s social program. Classes were taught using Code.org.
Technologies: Amazon Web Services (AWS), MySQL, Git, TypeScript, Adobe Experience Manager (AEM), GitLab, Java, Cucumber

QA Engineer

2014 - 2017
Base2 Tecnologia
  • Established test scenarios and test coverage necessary to a platform that targeted live monitoring of eCommerce web applications through continuous execution of user interface automated tests.
  • Created a test framework based on JUnit that used an annotation-driven approach and event-driven lifecycle management to collect information about test cases and test suite execution.
  • Integrated this framework with an application that built custom reports and another application that used Cron jobs to trigger automated test executions while managing activated processes.
  • Created a module to support UI automation for mobile applications into an existing framework that kept building UI automated scripts for web applications. This module was built on top of Appium.
  • Created a framework to build a functional test for REST services that leveraged an annotation-driven approach to dynamically execute tasks into the test case lifecycle.
  • Built a custom report that integrated with this framework to enable users to interact with request and response information through a web interface.
  • Created an application responsible for parsing JMeter’s test run outputs to provide insight into the application’s performance numbers through spreadsheets.
  • Created complex performance script scenarios that involved, for example, determining the load at runtime based on the business insight of load patterns throughout the day.
  • Performance-profiled web and mobile applications to assess and determine application performance baselines.
  • Created automated UI test scripts for applications for a wide array of applications in banking, health care, educational institutions, and car rental services, amongst others.
Technologies: Espresso, XCTest, Appium, Apache JMeter, Selenium, JavaScript, Python, C#, Java

Feature File Management

https://github.com/brunometzker/feature-express
Forked and extended application to host and manage features that described business requirements for applications. Developed features like folder management and scenario enhanced tagging linking to external resources.

TypeScript-WebDriverIO-Cucumber

Sample POC that shows how to integrate TypeScript, WebDriverIO, and Cucumber to automate test scenarios for web applications.

JMetrics

An application that parses JMeter's test run outputs and provides insight into the application's performance through spreadsheets. It uses Apache POI to do so.

Languages

Java, SQL, TypeScript, JavaScript, C#, Python, Bash

Frameworks

Selenium, JUnit, TestNG, Appium, Angular, XCTest, Espresso, Robot Framework, Spring Boot

Libraries/APIs

WebDriver, Selenium WebDriver, Jira REST API, Jenkins Pipeline, Node.js

Tools

Apache JMeter, Cucumber, Apache Maven, Jenkins, Git, NeoLoad, Vault, Postman, Jira, GitLab, GitHub, Bitbucket, Adobe Experience Manager (AEM), AWS CLI, IntelliJ IDEA, WireMock, Zephyr, RabbitMQ

Paradigms

Testing, E2E Testing, Functional Testing, REST, Software Testing, Load Testing, Azure DevOps

Platforms

iOS, Linux, MacOS, Amazon Web Services (AWS), Docker, Kubernetes, Amazon EC2, Visual Studio Code (VS Code)

Other

API Testing, Integration Testing, UI Testing, RESTful Microservices, Performance Testing, Mobile App Testing, Testcontainers

Storage

MongoDB, Microsoft SQL Server, Amazon S3 (AWS S3), MySQL, SQL Server 2008, Google Cloud, Redis

2012 - 2016

Bachelor's Degree in Computer Science

Centro Universitário UNA - Belo Horizonte/MG, Brazil

DECEMBER 2017 - PRESENT

Oracle Certified Associate - Java SE 8 Programmer

Oracle

JUNE 2015 - PRESENT

CTFL - Certified Tester Foundation Level

ISTQB

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring