Arquiteto de Software
VERY TECNOLOGIA S.A.
Descrição da vaga
Estamos em busca de um(a) Arquiteto(a) de Software para atuar no desenvolvimento e evolução de soluções corporativas utilizando PHP (Laravel) e React, contribuindo diretamente para a definição da arquitetura das aplicações, adoção de boas práticas de desenvolvimento e modernização tecnológica dos sistemas.
Responsabilidades
- Projetar, definir e evoluir a arquitetura de aplicações desenvolvidas em PHP (Laravel) e React.
- Liderar tecnicamente o desenvolvimento e a evolução de soluções, garantindo qualidade, escalabilidade e manutenibilidade.
- Definir padrões de arquitetura, desenvolvimento e integração entre sistemas.
- Desenvolver e manter APIs RESTful e serviços para integração entre aplicações internas e sistemas de terceiros.
- Projetar soluções orientadas à reutilização, modularidade e boas práticas de engenharia de software.
- Realizar modelagem lógica e física de bancos de dados MySQL, PostgreSQL e SQL Server, garantindo desempenho e integridade das informações.
- Apoiar a definição de arquiteturas baseadas em microsserviços e soluções orientadas a eventos, quando aplicável.
- Desenvolver interfaces responsivas utilizando React.js, Bootstrap, Tailwind e JavaScript, assegurando acessibilidade e boa experiência do usuário.
- Participar da definição e implementação de mecanismos de autenticação e autorização utilizando OAuth2, OpenID Connect e JWT.
- Apoiar a implantação e manutenção de ambientes conteinerizados utilizando Docker.
- Participar da definição e manutenção de pipelines de integração e entrega contínua (CI/CD).
- Realizar revisões de código (Code Review), propondo melhorias de qualidade, desempenho e segurança.
- Apoiar tecnicamente as equipes de desenvolvimento na resolução de problemas e na adoção das melhores práticas.
- Produzir documentação técnica, diagramas de arquitetura e especificações de integração.
- Identificar riscos técnicos e propor soluções que garantam estabilidade, escalabilidade e facilidade de manutenção.
- Garantir aderência às boas práticas de desenvolvimento, segurança, testes automatizados e documentação.
Requisitos e Qualificações
Formação
- Ensino Superior completo em Ciência da Computação, Sistemas de Informação, Engenharia de Software ou áreas correlatas.
Conhecimentos Técnicos
Obrigatórios
- Experiência em desenvolvimento de aplicações corporativas utilizando PHP (Laravel) e React.
- Conhecimento em arquitetura de software para aplicações web.
- Experiência com APIs RESTful.
- Conhecimento em microsserviços e integração entre sistemas.
- Experiência com bancos de dados MySQL, PostgreSQL e SQL Server.
- Conhecimento em modelagem de dados e otimização de consultas SQL.
- Conhecimento em Git e estratégias de versionamento.
- Experiência com Docker e conteinerização.
- Conhecimento em pipelines de CI/CD (GitLab CI, GitHub Actions, Jenkins ou similares).
- Conhecimento em JavaScript, HTML5 e CSS3.
- Conhecimento em padrões de projeto (Design Patterns), princípios SOLID e boas práticas de desenvolvimento.
- Conhecimento em autenticação JWT, OAuth2 e OpenID Connect.
- Conhecimento em testes automatizados e qualidade de software.
Desejáveis
- Conhecimento em Kubernetes ou OpenShift.
- Conhecimento em Redis, RabbitMQ ou Kafka.
- Experiência com Nginx e Apache.
- Conhecimento em observabilidade (Dynatrace, Grafana, Prometheus ou Datadog).
- Conhecimento em arquitetura orientada a eventos.
- Certificações em PHP, Laravel, React ou tecnologias relacionadas.
Competências
- Capacidade analítica.
- Boa comunicação.
- Organização.
- Visão sistêmica.
- Facilidade para resolver problemas.
- Trabalho em equipe.
- Proatividade.
- Capacidade de documentar soluções técnicas.
- Perfil colaborativo e orientado à qualidade.
- Facilidade para compartilhar conhecimento com a equipe.
Informações Adicionais
Principais desafios do cargo
- Projetar soluções que atendam aos requisitos funcionais e não funcionais dos sistemas.
- Garantir escalabilidade, desempenho e segurança das aplicações.
- Apoiar a evolução tecnológica das plataformas e aplicações existentes.
- Promover boas práticas de arquitetura e desenvolvimento junto às equipes.
- Atuar em integrações complexas entre sistemas internos e externos.
- Apoiar decisões técnicas relacionadas à arquitetura das soluções.
- Contribuir para a melhoria contínua dos processos de desenvolvimento, implantação e manutenção.
- Garantir que as soluções desenvolvidas sejam sustentáveis, documentadas e alinhadas às necessidades do negócio.
