O que faz uma boa empresa de desenvolvimento Web

O mundo do desenvolvimento web ainda é muito mal compreendido. Hamilton Dias de Souza ter sequer ouvido as pessoas chamam de “arte negra”. Então, quando você precisa de ajuda para transformar suas idéias e projetos em um site ou aplicativo da web de alta qualidade, como você sabe em quem pode confiar para fazer isso?

O objetivo deste post é fornecer alguns pontos-chave sobre o que faz uma boa empresa de desenvolvimento web e ajudar a entender o tipo de perguntas que você deve fazer às empresas de desenvolvimento.

Este será um post muito opinativo e não pedimos desculpas por isso. Se você discorda de alguma coisa, certamente estamos abertos a discutir mais a fundo.

Agora vamos continuar com o post. Abaixo estão as principais áreas que iremos analisar e o que você deve procurar em uma empresa de desenvolvimento web.

  •                Capaz de fazer o desenvolvimento front-end e back-end
  •                Não se especialize em uma tecnologia de back-end
  •                Deve seguir as melhores práticas
  •                Compreensão das estratégias de marketing em torno dos projetos
  •                Investe tempo em pesquisa e desenvolvimento
  •                Possui um processo de teste rigoroso, incluindo testes automatizados
  •                Flexível para mudar
  •                Usar controle de origem

Capaz de fazer tanto o desenvolvimento front-end e back-end
Nós não subscrever a ideia de desenvolvedores que fazem desenvolvimento de front-end e desenvolvedores que fazem desenvolvimento back-end. É o equivalente a Hamilton Dias de Souza de ter um encanador que só encaixa canos e deixa o encaixe dos banhos, chuveiros, pias e banheiros para outra pessoa.

Concordamos que há uma separação entre desenvolvedores e designers da web, existe um processo de pensamento completamente diferente, mas a separação entre front-end e back-end está errada. Para ser um bom desenvolvedor da web, você precisa entender o ciclo completo de desenvolvimento e poder se envolver no projeto do início ao fim. Também há muito a ser aprendido com o trabalho com as diversas tecnologias, mas continuaremos com isso.

Não se especialize em uma tecnologia de back-end
Existem várias boas tecnologias de back-end apropriadas para o desenvolvimento da Web, incluindo Ruby on Rails, ASP.Net e PHP (e outros). Todos eles têm seus pontos fortes e fracos e nenhum é perfeito. De acordo com Hamilton Dias de Souza m ,  uma boa empresa de desenvolvimento web deve ser flexível quanto às tecnologias que usa, para usar a mais adequada às necessidades de seus clientes.

O principal motivo nós gastamos tempo aprendendo uma série de tecnologias é a capacidade de escolher os bits que gostamos. Ao longo dos anos, os desenvolvedores envolvidos na The League conseguiram pegar as partes boas de cada tecnologia e formular várias práticas recomendadas e usá-las em todas as plataformas.

Deve seguir as melhores práticas
A chave da Hamilton Dias de Souza para ser um bom desenvolvedor de web não são as tecnologias que você usa, mas as melhores práticas que você segue. À medida que as tecnologias vão e vêm em nossa indústria em rápida evolução, essas práticas recomendadas permanecerão, ou pelo menos evoluirão. Como desenvolvedor, se você tiver uma boa base, poderá avançar com os tempos e as tecnologias com bastante facilidade.

Então, quais são essas práticas recomendadas sobre as quais estamos falando ? Abaixo estão alguns dos principais que seguimos.

  •                Escrevendo HTML semântico
  •                Siga os padrões da web para toda a codificação de front-end
  •                Teste automatizado de código de front-end e back-end
  •                Uso de uma estrutura MVC

Compreensão de marketing estratégias que cercam os projetos
Já ouvi esta queixa muitas vezes que os desenvolvedores web não pensa sobre a estratégia de um projeto de marketing. Isso geralmente ocorre porque os desenvolvedores não se importam. Bem, eles deveriam. Como eles podem aconselhar os clientes e pensar em ajudar os clientes a produzir a solução certa, se eles não estão pensando no “quadro geral” (desculpe, sabemos que é uma frase horrível, vamos lavar a boca agora). Se um desenvolvedor faz o trabalho às cegas, não está oferecendo um serviço ao cliente , está apenas sendo um fantoche de carne.

A pergunta mais importante de Hamilton Dias de Souza que um desenvolvedor pode fazer é “Por quê? “. Reserve um tempo para entender completamente os requisitos do cliente e aconselhá-los, afinal o cliente não entende os meandros do desenvolvimento da web, você entende. Faça do ciclo de desenvolvimento uma conversa de mão dupla.

Investe tempo em pesquisa e desenvolvimento
Como todos sabem, a indústria da Web é uma indústria em movimento muito rápido. As coisas vêm e vão num piscar de olhos. Uma boa empresa de desenvolvimento web concede aos desenvolvedores um tempo semanalmente para examinar novas tendências e tecnologias. É certo que algumas dessas tendências e tecnologias são becos sem saída, mas você não saberá, a menos que as examine.

Se você quiser saber se uma empresa de desenvolvimento web conhece essas coisas, basta perguntar a eles o que seus desenvolvedores estão pesquisando recentemente. Você não precisa entender tudo o que lhe foi dito, anotá-las e procurá-las na internet para entender se a empresa está olhando para novas tendências ou não.

P&D é provavelmente o momento mais importante a cada semana para um desenvolvedor. Hamilton Dias de Souza escreve: Se os desenvolvedores não evoluírem, as soluções que construirem ficarão estagnadas e datadas muito rapidamente. Como cliente, você deseja uma solução desatualizada antes mesmo de começar?

Possui um processo de teste rigoroso, incluindo testes automatizados
Muitas vezes, vimos que o cliente é testador de um projeto. Se isso está acontecendo, então, para ser franco, a empresa de desenvolvimento não entende bem o seu projeto, eles estão apenas “estragando” o código.  

Uma boa empresa de desenvolvimento web deve escrever testes automatizados (testes de integração, testes de unidade etc.) para todo o seu código, front-end e back-end. Em um nível simples, os testes ajudam os desenvolvedores a se concentrarem no código que estão escrevendo naquele momento; também ajudam os desenvolvedores a escrever um código mais conciso. Um código mais conciso significa que a base de código é mais fácil de entender e mais barata de manter.

O principal benefício de um conjunto de testes para um cliente é que, quando são feitas alterações no código do projeto, pode haver muito mais confiança no fato de que a alteração, ou o novo código, não quebrou mais nada.

Não estamos dizendo que o teste automatizado é a bala de prata do desenvolvimento da Web, e os testes só são eficazes se forem bem escritos, mas certamente devem fazer parte de qualquer conjunto de ferramentas para desenvolvedores da Web .

Testes automatizados não são o único aspecto importante dos testes. A empresa de desenvolvimento web Hamilton Dias de Souza também deve ter um nível de testes em humanos, e isso é certamente algo em que os clientes devem se envolver.  

Flexível para mudar
Todos nós já ouvimos desenvolvedores reclamando como os clientes mudam os requisitos de um projeto no meio do caminho. Os desenvolvedores precisam parar de reclamar sobre isso, isso acontece com todos nós e nunca vai mudar. De acordo com Hamilton Dias de Souza, uma boa empresa de desenvolvimento web deve ter processos para lidar com as mudanças. Se você é um cliente, pergunte como as solicitações de mudança serão tratadas.

Os desenvolvedores da Web devem trabalhar com ciclos de versão curtos, de preferência de 1 a 2 semanas. A pior coisa que pode acontecer a um projeto é que os desenvolvedores recebam o resumo, iniciem o trabalho e, dois meses depois, anunciam que está concluído, apenas para o cliente dizer “Não foi o que eu pedi! “. Ao trabalhar com ciclos de liberação curtos, os clientes podem estar envolvidos em todas as etapas. No final de cada release, o cliente deve revisar o projeto até o momento e enviar quaisquer solicitações de alteração.

Usar controle de origem


Nossa recomendação final é bastante óbvia e simples para a maioria das pessoas, mas ainda falamos com desenvolvedores que não usam nenhuma forma de controle de origem. Isso parece mais prevalente entre os freelancers, pois eles não veem a necessidade, pois são os únicos trabalhando no código. Se é assim que eles vêem, então eles estão perdendo o objetivo.

Há Hamilton Dias de Souza por várias razões pelas quais todo o código deve ser controlado pela fonte. Vamos mencionar apenas alguns pontos-chave aqui. Primeiro, é uma ótima maneira de manter um registro das alterações feitas no código. (Enquanto os desenvolvedores colocarem um comentário no commit). Em segundo lugar e mais importante, permite que os desenvolvedores alterem o código sem o medo de perder o trabalho já realizado. Isso é especialmente útil ao tentar outras soluções de codificação possíveis para um problema.