Então você quer se tornar um desenvolvedor Ruby?



Ao mesmo tempo, fui convidado a criar uma equipe Ruby para uma unidade separada da Codequest, o que significava que eu me tornaria Timlid (inferno, sim !!!) e - mais importante, de fato, me tornaria a pessoa que é abordada por todo o RH que tenta recrutar novos desenvolvedores (hmm ...). Obviamente, a maioria desses desenvolvedores era iniciante com conhecimento médio. Ao abordar cada entrevista, não esqueço que, há pouco tempo, eu era um estudante novato sentado do outro lado da mesa, por isso tento ser paciente, gentil e dar a cada candidato um feedback honesto e útil, mesmo se decidirmos que ele somos nós não apropriado. Seja como for, eu revelei alguns padrões - muitos desenvolvedores, especialmente iniciantes, cometem erros que não apenas dificultam o início, mas que podem ser facilmente evitados se apenas alguém lhes dissesse isso antes.Eu mesmo cometi a maioria dos erros do meu tempo e se alguém tivesse me avisado sobre isso, embora pudesse ter sido, eu simplesmente não ouvi, provavelmente teria me salvado de muitas decepções - portanto, para facilitar a vida de alguém, eu Vou tentar apontar que um iniciante (ou até o meio) pode fazer melhor se ele quiser se desenvolver efetivamente como desenvolvedor na prestigiada direção do desenvolvimento de software.

GitHub


Todos na comunidade sabem que o seu repositório GitHub é o que realmente importa para o futuro empregador. Não é? Se você escreveu uma biblioteca de código aberto para a qual as pessoas usam ou contribuíram, sim, isso pode ser um trunfo valioso. Se você escreveu um aplicativo, mesmo que seja um aplicativo de treinamento que resolva alguns dos problemas cotidianos que você possui, também pode mostrar suas habilidades. No entanto, se todos os repositórios que você pode mostrar são tarefas semi-concluídas de outras empresas que nunca foram tocadas nos últimos nove meses, ou Rails super-básicos, seus primeiros “trilhos novos”, você realmente quer que vejamos isso? Talvez você agora seja muito melhor do que 9 meses atrás, droga, provavelmente é,mas não temos certeza, e quando você nos envia um link para o cemitério do seu código - bem, como eles dizem, você tem apenas uma chance de causar uma boa primeira impressão, certo?

E isso se aplica não apenas aos juniores - se você desse uma olhada nos meus repositórios do GitHub, teria encontrado exatamente as mesmas coisas em todos os lugares - tarefas de recrutamento, de anos anteriores ou alguns experimentos abandonados em material nuclear que eu estudei no processo e etc. Eu comprometo no GitHub todos os dias - mas esses commits são repositórios particulares, não há nada para analisar. Tudo o que quero dizer é normal se nada aparecer no seu GitHub, mas não nos mostrar.

Rubi


Todos nós amamos o Rails! E nós também os odiamos. E às vezes amamos e odiamos ao mesmo tempo. Ou às vezes um dia o amamos e no dia seguinte o odiamos e o amaldiçoamos. No entanto, todos concordamos que o Rails é o padrão de fato quando se trata de criar aplicativos da Web no Ruby - é preciso muita dedicação e esforço para trabalhar nesse negócio e nem tocar nele brevemente (embora eu tenha conhecido pessoas que alegam ter feito isso). Portanto, é natural que, quando você decidir se tornar um desenvolvedor web Ruby, aprenda Rails. E não é bom quando você aprende Rails sem aprender Ruby!

Você pode pensar que isso acelerará seu progresso - no final, a configuração de um aplicativo básico do Rails é muito simples - mas muito em breve você descobrirá que realmente não entende por que funciona, só saberá que funciona, mas Aqui está o primeiro erro simples, e você já está no Stack Overflow, procurando alguém que tenha um problema semelhante.

Pense dessa maneira: você não tentará escrever um livro em um idioma estrangeiro usando apenas o Google Tradutor e citações de seus filmes favoritos, certo? A mesma coisa com a escrita do aplicativo - você literalmente escreve o que deve fazer sentido e quanto melhor você conhece o idioma, melhor pode transmitir o significado pretendido e mais eficaz se torna na criação de frases - mais sentido ele faz. Quando você conhece apenas o Rails, seu vocabulário é limitado. E posso garantir que você não deseja trabalhar para uma empresa que precisa de "limitações", porque em breve você se transformará em um robô que implementa apenas as funções básicas de CRUD, o que é empolgante por, por exemplo, dois meses, mas rapidamente entediado, como escovar os dentes, você precisa fazer, precisa fazer isso, mas não é exatamente isso,o que você gostaria né?

Começo cada entrevista com uma pergunta muito simples e básica:

- O que é uma aula em Ruby, o que é um módulo, quais são suas diferenças e para que servem?

Você ficaria surpreso ao saber quantas pessoas realmente não sabem a resposta para esta pergunta! E essas são as pessoas que querem se tornar desenvolvedores de software. Todos eles podem criar um blog com postagens e comentários em minutos - e é tudo. Eu tinha um candidato, para o cargo de desenvolvedor intermediário, que alegou ter trabalhado no aplicativo cliente por um ano como líder de equipe - então ele ainda não sabe o que é o módulo Ruby.

Não seja assim. Aprenda Ruby. Existem muitos recursos para isso. Um dos melhores que eu sei é The Ruby Reference- Ruby online - um livro que se refere à documentação oficial, mas é mais conveniente e legível. Leia, aprenda e sinta como seu profissionalismo está crescendo.

Trilhos


Como mencionado acima, não vamos esquecer que o Rails é uma estrutura Ruby para escrever uma aplicação web. Há uma grande chance de que ela se torne sua ferramenta principal do dia-a-dia - então tente entender como ela funciona! O Rails Guides é uma documentação muito acessível e bastante extensa - reserve um tempo para ler e estudá-la.

Muito do que você lê não faz muito sentido a princípio, há grandes pedaços de material que você usará muito raramente, talvez nunca, mas o próprio conhecimento disso lhe dará muito mais do que o contrário .


As lições são ótimas - todo mundo as usa! No entanto, seguir as instruções de alguém não é suficiente, lembre-se de que o objetivo deste tutorial não é criar um blog de trabalho com postagens e comentários, mas ensinar como criar seu próprio aplicativo. E é exatamente isso que você deve aprender a fazer o mais rápido possível. Lembre-se de todos aqueles momentos em que você pensou "se eu tivesse um pedido para isso!". Ou pergunte a seus amigos e familiares qual aplicativo eles mais precisam. Pode ser qualquer coisa - um simples organizador de tarefas, uma lista de desejos ou qualquer outro aplicativo. Minha primeira aplicação foi uma espécie de caderno para os experimentos de minha esposa em seu laboratório (ela é uma cientista). Eu não terminei, mas isso não importa - neste caso, estamos falando de um processo, não de um resultado. Ao fazer a lição,Você está lidando com problemas criados artificialmente e soluções prontas para uso. Quando você cria suas próprias coisas, é forçado a pensar em como construí-las. Você precisa encontrar uma solução para seus problemas.Estou firmemente convencido de que não há melhor maneira de aprender a criar do que começar a criar, porque é isso que você fará como desenvolvedor da Web. Superar dificuldades lhe dará uma enorme sensação de satisfação, reforçará sua confiança e acenderá a faísca que nos faz ficar horas debruçados sobre o teclado, apenas para ver o JSON correto ou o formulário de registro de trabalho. Isso lhe dará experiência e algo para mostrar. Seu código não precisa ser bonito ou chamativo - você é iniciante, ninguém espera que você escreva um sistema operacional!você é forçado a pensar em como construí-lo. Você mesmo precisa encontrar uma solução para seus problemas.Eu acredito firmemente que não há melhor maneira de aprender a criar do que começar a criar, porque é isso que você fará como desenvolvedor da Web. Superar dificuldades lhe dará uma grande sensação de satisfação, reforça sua confiança e acende a faísca que nos faz ficar sentados por horas curvados sobre o teclado, apenas para ver o JSON correto ou o formulário de registro de trabalho. Isso lhe dará experiência e algo para mostrar. Seu código não precisa ser bonito ou chamativo - você é iniciante, ninguém espera que você escreva um sistema operacional!você é forçado a pensar em como construí-lo. Você precisa encontrar uma solução para seus problemas.Estou firmemente convencido de que não há melhor maneira de aprender a criar do que começar a criar, porque é isso que você fará como desenvolvedor da Web. Superar dificuldades lhe dará uma enorme sensação de satisfação, reforçará sua confiança e acenderá a faísca que nos faz ficar horas debruçados sobre o teclado, apenas para ver o JSON correto ou o formulário de registro de trabalho. Isso lhe dará experiência e algo para mostrar. Seu código não precisa ser bonito ou chamativo - você é iniciante, ninguém espera que você escreva um sistema operacional!o que você fará como desenvolvedor da web. Superar dificuldades lhe dará uma enorme sensação de satisfação, reforçará sua confiança e acenderá a faísca que nos faz ficar horas debruçados sobre o teclado, apenas para ver o JSON correto ou o formulário de registro de trabalho. Isso lhe dará experiência e algo para mostrar. Seu código não precisa ser bonito ou chamativo - você é iniciante, ninguém espera que você escreva um sistema operacional!o que você fará como desenvolvedor da web. Superar dificuldades lhe dará uma enorme sensação de satisfação, reforçará sua confiança e acenderá a faísca que nos faz ficar horas debruçados sobre o teclado, apenas para ver o JSON correto ou o formulário de registro de trabalho. Isso lhe dará experiência e algo para mostrar. Seu código não precisa ser bonito ou chamativo - você é iniciante, ninguém espera que você escreva um sistema operacional!ninguém espera que você escreva um sistema operacional!ninguém espera que você escreva um sistema operacional!

Mas como uma pessoa que recruta recém-chegados, em 10 casos em 10, escolherei alguém com seu próprio código, mesmo feio e de muleta, e não alguém que me mostre várias aplicações de aulas de treinamento (como palavras cruzadas).

Sr. cara legal.


Este último item não se aplica a um nível específico de experiência, mas essencialmente a todos que trabalham em nosso setor. Tudo é muito simples - não seja um idiota. Seja gentil com os outros. Seja útil. Sorriso Pergunte se você não sabe, explique se for solicitado. Não despreze as pessoas se elas não souberem nada, porque cada um de nós pode estar em seu lugar, ciência da computação, programação, esse é um campo tão amplo que é quase impossível ser especialista em tudo. Reconheça que você pode aprender com alguém, mesmo que ele tenha apenas uma fração da sua experiência. Ensine aos outros porque ensinar aos outros é uma das melhores maneiras de testar o que você realmente sabe. E aceite o fato de que, se você é a pessoa mais inteligente da sala, deve mudar de sala, porque essa é a única maneira de crescer e não se tornar arrogante.Teste seus conhecimentos e habilidades o mais rápido possível. Como diz a prática geralmente aceita na academia, “se dói, então cresce”, saia da zona de conforto, não fique nela.

Se você também estiver envolvido no desenvolvimento de front-end, verifique a lista completa dos erros mais comuns dos desenvolvedores de front-end iniciados, compilados pelo nosso Timlid Petr Kabachinsky.

All Articles