Pular para o conteúdo principal

Full Stack Developer (Pleno) - Node.js + Angular [Joinville/SC]

Tipo de vaga: Efetivo

Modelo de trabalho: Presencial

Descrição da vaga

A Aprova e a missão do time de Engenharia


A Aprova é Govtech líder em crescimento no Brasil. Nosso objetivo é utilizar o potencial da tecnologia para ajudar o governo a melhorar a vida das pessoas, impactando de forma positiva na redução do gasto com papel, no meio ambiente, na burocracia, evitando o deslocamento e reduzindo o tempo necessário para aprovações.

Em 2022, recebemos o nosso segundo aporte, no valor de R$ 22,5 milhões, liderado pela Astella e Vox Capital, passando a ser o maior investimento feito em uma Govtech da América Latina. Esses recursos vieram para impulsionar ainda mais os nossos produtos e alcançar nosso maior objetivo, tornar as prefeituras e câmaras 100% eficientes, menos burocráticas e digitais pra todos.

Nosso time de tech está em constante crescimento e estamos em busca de Software Engineers que queiram resolver grandes desafios, construir sua carreira com a gente e, juntos, desburocratizar este Brasilzão!




Sobre a vaga:

O Software Engineer colabora com equipes multidisciplinares para projetar e entregar um software funcional, com liberdade para garantir que as aplicações desenvolvidas estejam em conformidade com os padrões de codificação e design técnico. O Software Engineer trabalha em estreita colaboração com o Engineering Manager (Scrum Master) e CTO para atingir esses objetivos.


Contexto

A aplicação da Aprova encontra-se instalada para os seus mais de 90 clientes na AWS em arquitetura Serverless. Entretanto, por política de compliance do cliente Prefeitura de Joinville, a aplicação (uma única branch master) precisa ser compilada e instalada em servidores on premise CIASC.


A prestação do Serviço entre Aprova e Prefeitura de Joinville (PMJ) ocorre a partir de uma parceria com a empresa vencedora da licitação chamada Publica Tecnologia. Um dos requisitos do contrato de 5 anos firmado entre essas empresas é a prestação de suporte e desenvolvimento presencial por um profissional in-loco.

Esse profissional será responsável por desde o suporte, passando por correções de problemas na aplicação, testes e posterior build e deploy da aplicação nos serviços on premise. Todo código produzido será mergeado na Main e vice e versa (uma única branch para todos os clientes).


Nossa intenção é dar o máximo de autonomia para o profissional, desde o atendimento e levantamento do contexto da demanda, passando pela investigação e resolução tanto de defeitos na aplicação quanto novas funcionalidades que posteriormente certamente serão aproveitadas por Prefeituras do Brasil todo.

Reforça que o principal foco é prestar o atendimento a Prefeitura de Joinville e suas demandas, mas ao mesmo tempo, todo código escrito tanto por outros engenheiros como desse profissional serão mergeados em uma única branch, garantindo que

Joinville tenha sempre a melhor versão da aplicação o tempo todo.


Temos experiência atendendo esse cliente há 5 anos, portanto essas responsabilidades são algo que iremos documentar em detalhes e haverá um processo extenso de treinamento para garantir um trabalho de excelência.

Responsabilidades e atribuições

Específicas do Cliente On Premise:

  • Ser representante do serviço da Aprova, atendendo as demandas de chamados do cliente**,** com autonomia para escrever código, investigar, solucionar defeitos com autonomia e com liberdade.
  • Deve Realizar reuniões com a equipe técnica da prefeitura a fim de orientar ou explicar comportamentos do sistema.
  • Monitoramento dos serviços presentes no ambiente de homologação e produção, garantindo o melhor funcionamento do sistema.
  • Formalização e resolução de chamados em helpdesk específico.
  • Desenvolvimento de código melhor detalhado nas primárias gerais.
  • Posterior merge e deploy seguindo as guidelines de delivery fornecidas pela PMJ.

Primárias gerais:

  • Projetar, desenvolver e manter aplicações desenvolvidas pela companhia de maneira full stack, incluindo backend RESTful em TypeScript, NodeJS e Python, e frontend em TypeScript + Angular.
  • Esperamos que o Desenvolvedor seja owner de todo o ciclo de vida do desenvolvimento de software, escrevendo códigos bem estruturados, eficientes e testáveis.
  • Garantir que a parametrização e atualização do software aconteça de forma fluida. Auxiliar na configuração e manutenção de formulários. Disponibilizar novas versões via pipeliene do gitlab e eventual manutenção da pipeline.

Secundárias:

  • Participar das reuniões do time para colaborar com outros membros da equipe de engenharia, auxiliando em dúvidas técnicas e configurações de cenários complexos.
  • Disseminar conhecimento para o time, criando documentação técnica abrangente, incluindo especificações de design e manuais do usuário.

Requisitos e qualificações

  • Residir em Joinville/SC.
  • Ter disponibilidade de trabalho presencial. O profissional ficará alocado na Prefeitura de Joinville em horário comercial das 8h as 18h, com intervalo.
  • Graduação completa Analista de Sistemas, Ciência da Computação, Engenharia da Computação, e áreas afins.
  • Experiência com: Typescript, NodeJS, Angular, MongoDB e ferramentas da AWS.
  • Habilidades de comunicação para explicar conceitos técnicos de forma clara e compreensível para o cliente e informar as ações técnicas de forma objetiva e coesa.





Diferenciais

Esses diferenciais são características que estaremos observando, mas não são critérios eliminatórios. São pontos que contribuem para a análise do candidato, portanto, se você possuir alguma dessas experiências, compartilhe conosco durante o processo :)

  • Experiência em construção de aplicações em paradigma DDD (Design Driven Domain)
  • Experiência em construção de features de integrações (REST e SOAP)
  • Experiência em implementação de tecnologias de filas como RabbitMQ
  • Já ter trabalhado em empresas que crescem seu faturamento 2-3x ao ano (Startups)
  • Experiência construindo produtos que são distribuídas no modelo SaaS - Software as a Service


Como o time de Engenharia da Aprova trabalha

  1. Os Product Managers realizam entrevistas, coletando dados da aplicação de uso e ouvindo stakeholders diversos e constroem a visão das features, que é uma documentação que norteará o desenvolvimento nos próximos 3-6 meses daquele problema/solução;
  2. Em seguida o Product Manager quebra em pequenas entregas, e após input do Software Engineer em refinamentos a User Story entra em sprint, as sprints tem 15 dias e o Software Engineer estima em story points o que reflete esforço e complexidade;
  3. O Software Engineer inicia a implementação seguindo requisitos técnicos amplos que garantem liberdade da abordagem a qual sempre pode ser validada com o Tech lead e CTO;
  4. Possuímos um time de QA com uma suite de testes automatizados (end to end) o que ajuda o Software Engineer a garantir a qualidade da entrega;
  5. Após isso a Pull Request sobe numa branch main (só possuímos uma branch) que depois é mergeada com o Jenkins. Estamos trabalhando para que esse processo seja cada vez mais automatizado via Terraform.
  6. Realizamos releases diárias, entre 1-6 releases em horários fora de pico (18h). Todo o deploy leva em torno de 30 min.


Nossa Stack

Estamos baseados em uma arquitetura de microsserviços em ambiente serverless, totalmente suportada pelos recursos da AWS.

Backend:

  • Implementamos um backend RESTful utilizando microsserviços serverless em TypeScript, NodeJS e Python. Isso nos permite criar uma base sólida para nossas operações, mantendo uma flexibilidade essencial.

Frontend:

  • Em nosso frontend, usamos tecnologias como Angular, Vue e React para criar interfaces interativas e dinâmicas, proporcionando aos usuários uma experiência atraente e amigável.

Práticas e Ferramentas:

  • Utilizamos Domain Driven Design, RxJS e programação reativa para novas implementações.
  • Mantemos 100% de nossa infraestrutura como código, seguindo as melhores práticas cloud native, facilitando a escalabilidade e a manutenção contínua.
  • Utilizamos MongoDB e PostgreSQL como nossos sistemas de gerenciamento de banco de dados, proporcionando confiabilidade e flexibilidade para nossas necessidades variadas.

Serviços AWS:

  • Para suportar nossa arquitetura, confiamos em uma variedade de serviços da AWS, incluindo S3, SQS, RDS, Lambda, CloudFront, CloudFormation, entre outros. Isso nos permite oferecer aos nossos clientes serviços confiáveis e de alta performance.

Automação e Gerenciamento:

  • Implementamos integração contínua/desdobramento contínuo (CI/CD) usando Jenkins para garantir uma entrega rápida e confiável de nossos produtos.
  • Para organização e gerenciamento eficazes de nossas tarefas de desenvolvimento, contamos com o Jira.

Estamos continuamente refinando nossa Stack para enfrentar os desafios de escala e para garantir que possamos atender às crescentes demandas de nossos clientes de maneira eficaz e inovadora.

Etapas do processo

  1. Etapa 1: Cadastro
  2. Etapa 2: Agendamento de Entrevista
  3. Etapa 3: Teste Técnico
  4. Etapa 4: Papo com Gestor
  5. Etapa 5: Contratação

VEM TRANSFORMAR O BRASIL COM TECNOLOGIA E INOVAÇÃO!

A Aprova é uma plataforma de gestão e automação de processos para o setor público.


Queremos um Brasil mais digital, especialmente no âmbito governamental. Nosso propósito é potencializar o trabalho do servidor e construir para o cidadão um governo confiável, eficiente e de excelência.


Com serviços públicos melhores proporcionamos uma experiência tão ágil e positiva quanto a já vivenciada (e aprovada) pelo cidadão no setor privado.


🇧🇷 Já impactamos a rotina de 21 milhões de brasileiros com serviços em cidades de Norte a Sul do país, como alvarás para construção, licenças ambientais, autorizações para vacinação, pagamento de impostos, entre outros. 🚀


Uma Govtech do Brasil, para o Brasil!


Desde sua fundação em Cascavel, no Paraná, no ano de 2017, a Aprova se tornou líder em crescimento no cenário nacional de startups para gestão pública. E também recebeu duas rodadas de investimento, sendo a última o maior aporte já realizado em uma govtech da América Latina. 



Aproveiras e Aproveiros: quem são?


Profissionais das áreas de programação, psicologia, jornalismo, publicidade, engenharia civil, arquitetura, administração, contabilidade, vendas e outros tantos talentos diversos que modernizam os serviços públicos para que o cidadão tenha suas demandas resolvidas e acredite novamente no país. 


Trabalhamos com tecnologia e um propósito real (AND muito forte) 💙


Vem ver como é o dia a dia na firma: https://www.instagram.com/souaprova/



A Aprova está em busca de mais gente habilidosa a fim de resolver grandes desafios e crescer modernizando nosso país. Somos pessoas:


  • Arrojadas
  • Perspicazes
  • Resilientes
  • Orquestradas
  • Virtuosas 
  • Ambiciosas

Esses são os nossos Pilares de Cultura, que criam um ambiente de trocas e confiança entre colaboradores/as, heads, clientes e parceiros. Entenda o que nos faz ser Aprova:


ARROJADOS: Não importa o quanto você já alcançou, mire em algo maior.

Temos curiosidade e disciplina na busca das melhores referências para aumentar nossa capacidade e régua de qualidade. Os desafios nos energizam!


PERSPICAZES: A nossa ajuda é a melhor que nosso cliente pode receber.

Somos especialistas em resolver os problemas do setor público. Se não temos, criamos uma solução para melhorar o jeito de fazer as coisas.


RESILIENTES: Faço o que posso, com o que eu tenho, onde estou.

Sabemos extrair aprendizados dos acertos e lidar rápido com os erros. Provocar grandes mudanças é estar disposto a lidar com os desafios naturais dessa trajetória.


ORQUESTRADOS: A melhor maneira de ter resultados é realizar junto.

Acreditamos na realização coletiva, com alto nível de responsabilidade individual e colaboração entre times, comunicação aberta e expectativas alinhadas. 


VIRTUOSOS: Fazer o que é correto sempre é a escolha certa.

Guiamos nossos relacionamentos com integridade. Isso nos leva onde queremos chegar, sem atalhos, sempre estimando a missão acima de ganhos pessoais. 


AMBICIOSOS: Resolvendo um ticket de cada vez, vamos mudar o Brasil. 

Cuidamos de cada demanda com a máxima atenção. Um time orientado a executar entregas incrementais faz toda diferença para escalar nosso impacto.


Saiba tudo sobre os nossos Pilares: https://aprova.com.br/cultura/



Topa o desafio de transformar a gestão pública com a gente?


#vemserAprova


Transformar vidas e sua carreira!



?