Engenheiro de Software Pleno
Digisystem
Nova
Afirmativa
PCD
BRASILIA - DF
Publicada há 3 horas
Regime de contratação
CLT
Modelo de trabalho
Presencial
Carga horária
40 horas semanais
Descrição
Responsabilidades
- Desenvolver e implementar soluções de software complexas,
- Participar do ciclo de vida completo do desenvolvimento de software,
- Realizar análise e design de sistemas,
- Escrever código limpo, eficiente e testável,
- Colaborar com outros desenvolvedores e stakeholders.
Requisitos
- Formação em Ciência da Computação, Engenharia da Computação ou áreas afins ou ainda qualquer curso superior acrescido de especialização na área de informática, com carga horária mínima de 360h;
- Experiência comprovada de 3+ anos como Engenheiro de Software,
- Domínio em linguagens de programação como Java, Python ou JavaScript,
- Experiência com bancos de dados relacionais e NoSQL,
- Conhecimento de metodologias ágeis de desenvolvimento.
Habilidades
- Forte habilidade de resolução de problemas,
- Excelente comunicação e habilidades interpessoais,
- Capacidade de trabalhar de forma independente e em equipe,
- Proficiência em ferramentas de controle de versão (Git),
- Inglês técnico avançado.
- Engenheiro de software com ênfase em ambiente Web: o Linguagens de programação para Web Java, Javascript, Python, Typescript; o Linguagens e notação html, CSS3, JSON, markdown, asciidoc; o Princípios e práticas de desenvolvimento de software ágil, tais como os especificados na metodologia AgiTSE - Framework de Desenvolvimento de Software do TSE; o Padrões de projeto (enterprise integration patterns, design patterns, microservices patterns); o Arquitetura de aplicações para ambiente web, arquitetura em três camadas, modelo MVC; o Domain-driven design (DDD); o Modelagem de dados relacional; o Integração entre sistemas: Mensageria, Web services, REST, EJB; o Integração contínua (continuous integration), test-driven development (TDD); o Publicação de aplicações em plataformas como serviço (Platform as a service - PaaS); o Refactoring; o Entrega contínua (continuous delivery); o Análise estática de código; o Testes de software: teste de unidade, integração, sistema/funcional, aceitação/história, carga, desempenho, vulnerabilidade, usabilidade, acessibilidade; o Automatização de testes funcionais, de unidade e de carga com ferramentas de software. Testes de unidade em Java com a ferramenta JUnit 4 ou superior. Automatização de testes funcionais com a ferramenta Selenium Webdriver 2.4 ou superior. Testes de carga com JMeter 2 ou superior; o Construção de consultas a bancos de dados em linguagem SQL; o Controle de versão de código-fonte e outros artefatos com uso das ferramenta GIT 2 ou superior.