Evolução na profissão

Para evoluir na profissão de desenvolvedor back-end, é necessário ser proativo, cumprir horários, fazer não só um bom código, mas também uma boa documentação, procurar sempre resolver os problemas de forma mais eficiente e sempre buscar novos conhecimentos já que essa é uma área em constante evolução.

Descrição da atividade atual

Um desenvolvedor back-end desenvolve sistemas que irão cuidar do funcionamento de aplicações. Em analogia ao modelo MVC (Model View Controller), o desenvolvedor back-end cuida do “Controller”, quase sempre recebendo informações (request) do cliente (View) e usando informações do banco de dados (Model) para gerar resultados (response).

Requisitos mínimos para exercer a profissão

Para ser um desenvolvedor back-end é necessário saber receber um problema e pensar em uma solução usando os recursos fornecidos pela linguagem utilizada que é eficiente, escalável, fail-proof (tolerante a erros) e seguro. Assim, é necessário saber um pouco de banco de dados, segurança da informação, infraestrutura, complexidade de algoritmos etc.

Ferramentas usadas no dia-a-dia

IDE (Eclipse, NetBeans, IntelliJ), Editor de texto (Sublime Text, Atom), Navegador (Chrome, Firefox), Ferramenta para testar requests (Insomnia Rest, Chrome Developer Tools, CURL), Sistema de versionamento (git).

Tecnologias envolvidas

Java, Spring Boot, JSON, Maven, BitBucket, Bancos de Dados (relacionais e não relacionais), AngularJS, JavaScript.

Ética profissional

Um bom desenvolvedor back-end não viola políticas de privacidade de dados, não toma decisões que estão acima de seu cargo sem antes conversar com seus superiores e, em geral, sempre toma um cuidado extra para certificar que suas aplicações estão seguras e sabe trabalhar em equipe, respeitando seus colegas e mantendo uma boa imagem da empresa.

Exemplo de resultado tangível

[1]

Upload da apresentação

https://www.dropbox.com/s/50pufcaqnip46vv/apresentacao%20pci.pdf?dl=1

Dúvidas


  • 01. Como é que o trabalho desenvolvido pelo Dev Back-end se "encaixa" no trabalho a ser desenvolvido pelo Dev Front-End?
    • São duas partes de um aplicação que podem ser construídas separadamente. Para se "encaixarem" pode-se criar uma interação entre estas partes usando por exemplo, APIs.


  • 02. Descreva os principais ambientes utilizados pelo Dev Back-End para desenvolver um trabalho (Pode ser relativo a um projeto específico).
    • Sistema Operacional (Linux, Windows), Linguagem de Programação (Java, Python, Dotnet, PHP), Banco de Dados (MySQL, Oracle, Postgresql), Frameworks (Hibernate, Maven, Spring), Versionamento (GitHub, Subversion), IDEs (CodeBlocks, Eclipse).


  • 03. Quais são as skills de quem trabalha nesta área?
    • Saber trabalhar em equipe
    • Boa leitura em inglês
    • Conhecer metodologias de desenvolvimento
    • Ter domínio sobre APIs, Webservices
    • Criar código eficientes
    • Documentar tanto no código quanto em documentos


  • 04. Quais são os principais desafios da área?
    • Acompanhar a evolução das tecnologias
    • Gerar aplicações com alta performance
    • Criar soluções com qualidade


  • 05. O Dev Back-End deve saber manipular Banco de Dados? Dê um pequeno exemplo disso.
    • Sim. Ele deve ter a capacidade de utilizar comandos como Select, Insert, Delete e outros comandos disponíveis no SQL ou em banco de dados NoSQL


  • 06. O Dev-Back-End deve saber integrar com outros sistemas e plataformas? Dê um pequeno exemplo disso.
    • Sim. Um exemplo comum é a autenticação de usuários. O Dev Back-End pode comunicar-se com outras aplicações como Faceboo, Google, etc.