Quick Summary
This Mid/Senior Full Stack Software Engineer position, based remotely in Brazil, requires expertise in developing responsive Web applications (React, TypeScript) and APIs (PHP or Node.js). The role demands strong knowledge of Hexagonal Architecture, Microservices, SOLID principles, system metrics/observability, CI/CD, and comprehensive automated testing (including load and regression tests). Core technical requirements include proficiency in PHP, Node.js, React, TypeScript, REST APIs, asynchronous communication, and databases (MySQL, PostgreSQL, Redis). Responsibilities involve supporting the full development lifecycle, standardizing component libraries, implementing A/B experiments, and collaborating across UX, DevOps, QA, and Product teams.
Required Skills & Experience
- Knowledge of back-end development using PHP and Node.js.
- Proficiency in applying concepts like REST API and cron jobs.
- Proficiency in utilizing queues and Lambdas for asynchronous communication.
- Knowledge of Hexagonal Architecture, SOLID principles, and MVC.
- Familiarity with Microservices architecture.
- Knowledge of techniques and tools for system metrics and observability.
- Expertise in automated testing (unit, integration, smoke, regression, and load tests).
- Front-end development skills: React, TypeScript, CSS.
- Database expertise (MySQL, PostgreSQL, Redis).
- Proficiency in Git (Gitflow).
- Knowledge of CI/CD practices.
- Technical English proficiency for reading documentation.
Bonus Qualifications
- Integration with payment services.
- Data Security.
- Nest.js.
- Micro Frontends.
Key Responsibilities
- Develop and maintain modern, responsive Web applications using React.js and TypeScript.
- Develop and maintain APIs utilizing Node or PHP.
- Contribute to the development, organization, and standardization of reusable component libraries with tools like Storybook.
- Implement and monitor A/B experiments to test optimization hypotheses.
- Support the entire development lifecycle, from solution conception to production deployment.
- Collaborate with multidisciplinary teams (UX, DevOps, QA, and Product).
- Provide insights to enhance performance, usability, and user experience (UX).
- Participate in discussions regarding design patterns, architecture, methodologies, and other technology topics.
- Actively participate in Agile ceremonies, contributing ideas for continuous improvement.
- Disseminate knowledge within the team concerning technologies, tools, concepts, theories, or techniques.

