Fila no back-end: o que estamos defendendo e por onde começar nossa jornada?

imagem

Para quem não gosta de fazer interface do usuário, “respira” filas e sonha com uma API ideal, na quarta edição do podcast “Dry Oars”, chamamos os desenvolvedores de back-end Andrey, Azat e Anton.

Os desenvolvedores de ferro da Redmadrobot, Artyom e Roma, gravam um podcast em que, juntamente com os convidados, discutem vários aspectos da criação de produtos de TI e compartilham suas experiências em digital. Na edição 4, os facilitadores descobriram pelos interlocutores como começou o caminho para o back-end, qual estrutura da web eles deveriam escolher, se sonhavam com o layout das telas e como explicar à mãe com quem você trabalha.

Anexando um podcast e respostas a várias perguntas importantes


Cronometragem


01:27 - Como eles chegam ao desenvolvimento de back-end
10:33 - O que atrai especialistas no back-end
12:32 - Interrupção: você precisa de um conhecimento profundo de algoritmos para quem está "vendo o cookie"?
15:17 - Perguntas sobre dimensionamento e segurança
16:23 - Todos os desenvolvedores de back-end fazem o mesmo trabalho?
19:23 - Ruby on Rails, sua “mágica”, sobe e desce
24:23 - Como escolher uma plataforma?
28:06 - Por que os microframes são necessários e como trabalhar com eles?
33:55 - O que é um servidor assíncrono e por que é necessário?
35:58 - Go: simplicidade e arquitetura
41:46 - Postgresql em vez do MySQL. Por quê?
44:58 - Por que você precisa aprender o Docker o mais rápido possível e por que você deve instalar o nginx?
50:49 - Desenvolvedores ecológicos: de quais habilidades mínimas os graduados precisam para conseguir um emprego?
1:04:21 - Melhores livros sobre algoritmos
1:09:33 - O que você precisa saber e o que não precisa fazer na entrevista?
1:14:29 - Você quer que os caras deixem o back-end?
1:20:28 - E, no entanto, o que não deve ser feito no trabalho e por que "precisa se comunicar com as pessoas"?

Como o desenvolvimento de back-end?


Apesar da popularidade do desenvolvimento móvel, ainda há quem seja mais bonito do que o bom e velho back-end. Entre eles, é claro, estão nossos convidados.

Azat, por exemplo, contou como não foi para o desenvolvimento móvel e decidiu que seria mais lógico se envolver no desenvolvimento da web em um sentido amplo. Mas a história de Anton está intimamente relacionada ao Python.

Python. , - «». , , - -, CMS’ — . . - , , - . , , . , , , . , , backend .

backend...


... Quando existe uma interface super popular? Artyom lembrou muitas entrevistas nas quais os candidatos disseram por que desejam construir uma carreira no desenvolvimento móvel. Só mais tarde, para mostrar a frescura do aplicativo. No back-end, isso é mais complicado.

Mas, de fato, se os amigos com quem você compartilha a alegria de criar um back-end entenderem no desenvolvimento de TI, eles o elogiarão. Mas a mãe pode dizer o que o servidor fez pelo aplicativo móvel da loja, que ela usa. E mesmo que ela não entenda completamente o que é um servidor, a mãe ainda ficará orgulhosa.

Profissionais do desenvolvimento de back-end


Azat sugeriu que as pessoas são atraídas pelo fato de que não há necessidade de impor. Ainda existe uma opinião de que o back-end é mais difícil e mais frio, embora cada um, é claro, o seu. Depois disso, os caras conversaram sobre dimensionamento e segurança. Mais detalhes - a partir das 15:17.

Todos os desenvolvedores de back-end fazem um trabalho?


Isso não é verdade. As tarefas no desenvolvimento de back-end são diferentes e dependem não do idioma ou plataforma, mas das necessidades e especificidades da empresa, bem como do nível do desenvolvedor.

Às vezes, o trabalho pode ser refinar um método de API existente ou fazer a integração entre dois sistemas de terceiros, mas em algum lugar pode ser necessário desenvolver uma arquitetura de sistema distribuída do zero.

Python, Ruby, Go, C ++ e tudo-tudo-tudo


Os caras do estúdio começaram a falar sobre como escolher uma plataforma. E também sobre o fato de Ruby "ainda estar vivo" (Roma viu a prova recentemente), e também por que Anton começou a aprender Python, sobre os nomes estranhos dos criadores de linguagens de programação, a simplicidade de Go, microframes (houve muita conversa sobre eles - ouça 28:06) , MySQL, Docker, servidores assíncronos e trilhos mágicos.

Desenvolvedores "ecológicos" e habilidades mínimas para o candidato


Por que profundidade, por exemplo, um graduado universitário precisa entender o back-end para conseguir um emprego?

Durante a discussão, ele deve ser um "usuário confiante de PC". Mas sério, de acordo com Azat, um jovem especialista deve ter as habilidades mínimas para administrar sistemas unix - para conhecer um conjunto específico de comandos: cd, ls e outros.

Também preciso entender o que é um processo, quais são os direitos de acesso, o que é o sistema de direitos Linux e como as redes operam em geral, como IPC (comunicação entre processos) e os soquetes TCP funcionam. Isso é o suficiente para começar. Você só precisa ser capaz de programar. Aqui está o que Anton disse:

Existem coisas básicas comuns a qualquer desenvolvimento, por exemplo, para OOP (programação orientada a objetos), existem regras para escrever, projetar classes. Se esses são algoritmos, você só precisa saber como eles são projetados, o que existe, programação dinâmica e "usar a pilha sempre que puder".

Em outras palavras, para começar, você não precisa mergulhar nela.
Iniciante não precisa conhecer todos os algoritmos de classificação existentes. Mas, ao mesmo tempo, uma pergunta semelhante ocorre nas entrevistas. Ele é necessário para ver como uma pessoa pensa e que solução ele oferecerá.

Quais livros sobre algoritmos valem a pena ler


Andrew "se afogou" por Stephen Skien e seus "Algoritmos". Desenvolvimento e aplicação ". Anton recomendou um livro de Thomas Cormen, no qual "existe um equilíbrio entre rigor, clareza e simplicidade de apresentação" e "Cracking the Coding Interview" é um bom guia prático para entender rapidamente os algoritmos.

Os convidados também aconselharam a "Arte da Programação", de Donald Knuth, que foi concebida como um guia para compiladores, mas que se tornou um verdadeiro "livro de livros".

No final, o back-end - sim ou não?


Os caras chegaram à conclusão de que em todas as áreas do desenvolvimento web existem prós e contras. E isso é normal. Se você gosta de back-end, algoritmos e filas, deve pensar em uma carreira nele. Se brevemente. Se você quiser ouvir o raciocínio ao vivo, participe do podcast de 1:14:29.

Materiais úteis


Para quem deseja mergulhar no Python, você pode ler:


Uma seleção para futuros REST Jedi:



Edições anteriores do podcast Dry Oars


  1. Arquiteto de software: por que é necessário e qual é a sua maldição
  2. Fonte da verdade: como um analista ensina um gerente e um desenvolvedor a trabalhar juntos
  3. CTO toda inicialização
  4. Controle de qualidade para iniciantes: como testar um foguete ou avião

Ouça-nos sempre que for conveniente: Soundcloud , Apple , Google Podcasts
Evite discutir o problema no chat do Telegram

All Articles