O Analista de Desenvolvimento Pleno/Desenvolvedor Full Stack Pleno será responsável por planejar, desenvolver e implementar soluções de software, geralmente trabalhando com diferentes linguagens de programação e tecnologias.
Atua no desenvolvimento e manutenção de sistemas, assegurando a qualidade do código e o cumprimento de requisitos funcionais e técnicos.
Esse profissional tem experiência em metodologias ágeis, e colabora com equipes de desenvolvimento, QA e stakeholders.
O analista pleno deve ser capaz de solucionar problemas complexos, realizar testes, otimizar processos de desenvolvimento e garantir a escalabilidade e segurança das aplicações.
Além disso, ele tem habilidade para trabalhar com bancos de dados, integração de APIs e ferramentas de versionamento, como Git.Esse perfil também requer uma sólida base em boas práticas de desenvolvimento, como Clean Code, além de conhecimento em frameworks e ferramentas comumente usados, como Spring Boot, Node.js, Cloud e preferência AWS.
Responsabilidades:
Desenvolvimento de Software:
Criar, testar e manter sistemas e aplicações utilizando linguagens e frameworks adequados (ex: Java, Spring Boot, Node.js, React, etc.).
Análise de Requisitos: Colaborar com equipes de produto e stakeholders para entender as necessidades do negócio e traduzi-las em requisitos técnicos e funcionais claros.
Correção de Bugs e Otimizações:
Identificar e corrigir problemas no código, além de otimizar o desempenho e a escalabilidade dos sistemas.
Implementação de Soluções:
Propor e implementar novas soluções tecnológicas ou melhorias para resolver problemas existentes ou aumentar a eficiência dos sistemas.
Integração de APIs:
Desenvolver e manter integrações entre diferentes sistemas e serviços, garantindo a interoperabilidade e funcionamento adequado das aplicações.
Versionamento e Controle de Código: Utilizar ferramentas de controle de versão, como Git, para gerenciar o ciclo de vida do código e garantir a colaboração eficiente dentro da equipe.
Documentação Técnica:
Documentar o desenvolvimento e as funcionalidades dos sistemas para facilitar a manutenção e futuras atualizações.
Colaboração em Equipe:
Trabalhar em conjunto com outros desenvolvedores, QA, designers e stakeholders, participando de reuniões de planejamento, refinamento e retrospectivas em metodologias ágeis (Scrum, Kanban, etc.).
Testes e Qualidade de Código:
Realizar testes unitários, de integração e garantir que o código atenda aos padrões de qualidade e boas práticas, como Clean Code.
Suporte Técnico:
Oferecer suporte na resolução de problemas técnicos durante o ciclo de desenvolvimento e após o lançamento das aplicações.
Atualização Contínua:
Manter-se atualizado com as novas tecnologias, ferramentas e boas práticas do mercado, propondo a adoção de inovações quando necessário.
Qualificações Desejadas:
Formação Acadêmica:
Graduação em Ciência da Computação, Engenharia de Software, Sistemas de Informação ou áreas correlatas.
Experiência Técnica:
Experiência de 3 a 5 anos em desenvolvimento de software, preferencialmente em ambientes de produção.
Proficiência em linguagens de programação, como Java, C#, JavaScript, TypeScript, entre outras.
Familiaridade com frameworks como Spring Boot (para Java), .NET Core (para C#), Node.js (para JavaScript), NestJS (para Typescript).
Desenvolvimento Backend:
Conhecimento em tecnologias de backend, com API REST, GraphQL, etc.
Metodologias Ágeis:
Experiência em metodologias ágeis, como Scrum ou Kanban, e ferramentas de gestão ágil, como Jira, Trello, Azure.
Controle de Versão e CI/CD:
Proficiência em ferramentas de controle de versão, como Git, e conhecimento em pipelines de CI/CD (Continuous Integration/Continuous Deployment), como Jenkins, GitLab CI, CircleCI ou Azure Pipelines.
Banco de Dados:
Experiência com bancos de dados relacionais (ex: MySQL, PostgreSQL, Oracle, SQL Server) e NoSQL (ex: MongoDB, DynamoDB), além de habilidade para criar e otimizar queries SQL.
Integração de APIs e Microserviços:
Experiência com integração de APIs, design de microserviços, e arquitetura orientada a serviços (SOA).
Conhecimento em DevOps:
Entendimento de conceitos de DevOps, incluindo infraestrutura como código, automação e ferramentas de orquestração de containers, como Docker e Kubernetes.
Testes e Qualidade de Código:
Familiaridade com práticas de Test-Driven Development (TDD), Behavior-Driven Development (BDD), testes unitários e de integração.
Boas Práticas de Desenvolvimento:
Conhecimento de padrões de design, princípios de arquitetura como SOLID e práticas de Clean Code.
Habilidades Analíticas:
Capacidade de analisar e resolver problemas complexos com eficiência e criar soluções escaláveis e seguras.
Comunicação e Trabalho em Equipe:
Habilidade para comunicar ideias técnicas e colaborar efetivamente em equipes multidisciplinares, incluindo desenvolvedores, QAs, analistas de negócio e stakeholders.
Este perfil visa encontrar profissionais com disposição para aprender e crescer dentro da área, contribuindo com insights valiosos para a equipe de engenharia de dados.