Os sistemas e projetos da Solvis envolvem diferentes linguagens de programação e várias tecnologias. Porém, sempre mantemos o foco em produzir soluções úteis para nossos clientes, criar produtos e serviços de qualidade e evolui-los constantemente. Não ficamos presos às mesmas soluções; sempre buscamos as melhores alternativas para atacar cada problema. Por isso, já temos uma boa lista de desafios à espera dos futuros membros de nosso time.
Perfil
Procuramos profissionais que:
- Gostem de programar
- Estejam à vontade com várias linguagens de programação, mesmo as que ainda não conhecem
- Tenham muita disposição para aprender novas tecnologias
- Tenham facilidade para explicar problemas e soluções
- Tenham facilidade para projetar estruturas de dados e algoritmos
- Escrevam software legível e de alta qualidade
- Possuam formação nas áreas de Computação, Engenharia de Software, Engenharia Eletrônica, Tecnologia da Informação ou similares
Principais atribuições
- Projetar e desenvolver sistemas web e para dispositivos móveis
- Especificar, projetar e implementar novos sistemas e funcionalidades
- Auxiliar na manutenção dos sistemas próprios da Solvis
- Escrever testes automatizados
- Manter e evoluir a infraestrutura dos sistemas da Solvis
- Registrar os conhecimentos adquiridos e compartilhá-los com os membros da equipe
Como você irá trabalhar lado a lado com diversos desenvolvedores em um time multidisciplinar, a tendência é que você execute muitas outras tarefas além das mencionadas acima, dependendo da fase de cada projeto.
Conhecimentos desejáveis
- Inglês avançado
- Orientação a objetos
- Boas práticas de programação
- Linguagens de programação dinâmicas (Ruby, Python, etc.)
- Testes unitários e de integração, mocks, etc;
- Desenvolvimento Web (HTML, CSS, Javascript, etc.)
- Desenvolvimento para Android e dispositivos móveis
Bônus
- Conhecimento de ferramentas de automação de deploy (capistrano, fabric, etc)
- Conhecimento e experiência em práticas de desenvolvimento ágil (TDD, pair programming, refactoring, integração contínua, etc);
- Experiência com métodos ágeis (Scrum, Kanban, Lean, etc);
- Conhecimentos de virtualização e/ou conteinerização (Docker, etc)
- Conhecimentos em design de interfaces e experiência de usuário (UX/UI)
Exemplos de ferramentas utilizadas
- Linguagens de programação: Ruby, Java (para Android), Javascript, SQL, HTML
- Frameworks: Rails, Twitter Bootstrap, Phone Gap, Framework 7
- Base de dados: MySQL, PostgreSQL
- Dispositivos móveis: Android, iOS
- jQuery, CSS, JSON,
Sabemos que profissionais com experiência em todos os itens acima seriam muito raros, então se mesmo sem conhecer todos os itens você tiver disposição e iniciativa para aprender, entre em contato conosco. Nós daremos a oportunidade para você aprender o que estiver faltando e se desenvolver enquanto trabalha.
Se você se identificou com nosso modo de trabalho, envie seu currículo usando o formulário ao lado que entraremos em contato.