fbpx
Novas tecnologias – Alguns motivos para você pensar nelas!
Publicado em: terça-feira, 16 de fev de 2016

Ao longo dos últimos anos, venho trabalhando escalabilidade e performance de uma forma bem intensa. Já fiz algumas implantações de Jenkins para CI, uma de MongoDB que ficou muito interessante, algumas outras de RabbitMQ, ElasticSearch + LogStash + Kibana e Redis.

Na maioria dos times onde realizei essas implantações, os times estavam tecnologicamente defasados, mas o mais relevante é que não era incomum encontrar quem tivesse algumas das percepções, sobre essas tecnologias, das que vou listar:

  • “É demais para o nosso projeto, é como usar um canhão para matar uma formiga”
  • “Não precisamos de todas essa features, eu faço algo melhor, sob medida, com muito menos recursos, em uma semana.”
  • “Nunca precisei disso antes, e sempre entreguei meus projetos. Isso é besteira, overdesign.”

Os pensamentos negativos sempre existirão, no entanto existem motivos suficientes para você se policiar quando tiver alguns desses pensamentos. E tenho um conjunto de argumentos que talvez possa te fazer abrir os olhos:

Entenda o tamanho do problemaFases aprendizado

O aprendizado é dividido em 4 etapas:

  • Inconscientemente Incompetente: Você sequer sabe o que você precisa saber para dominar algum assunto.
  • Conscientemente Incompetente: Você não sabe fazer, mas já sabe qual o caminho precisa percorrer e quais premissas são necessárias, você conseguiria montar um plano de estudo.
  • Conscientemente Competente: Você já sabe fazer, mas hora ou outra precisa recorrer a algum material, como google, livros etc.
  • Inconscientemente Competente: Você simplesmente faz, já não consegue nem dizer como, é como andar de bicicleta.

Sem no mínimo estar na segunda etapa do aprendizado, você não tem nenhuma capacidade de avaliar solução alguma. Você sequer consegue determinar o quanto precisa aprender para usar ou administrar a tal solução, ferramenta, framework ou biblioteca.

Uma notícia chata, você não é mais especialista que os especialistas

Se você não fizer parte do time do RabbitMQ, ou algum outro Message Broker, por favor, não acredite que suas habilidades no teclado, frente a uma IDE, são superiores às habilidades específicas daqueles que construíram e dão manutenção na solução. Enquanto seu business é entregar business, o business dessa galera é entregar essa solução, portanto as nuâncias, especialidades e mindset afloram na medida que você exercita as necessidades de tipos muito especialista de soluções.

Não subestime

Todas as soluções que cito aqui, são extremamente poderosas e específicas. Elas suportam grandes cargas, mas precisam de tunning na medida que você precisa de um throughput elevado. No entanto todas essas soluções custariam muito de um projeto para serem desenvolvidas com funcionalidades limitadas. A maturidade das soluções que apresentei é infinitamente maior do que algo que você possa pensar em construir em um ou dois meses. Fique atento, já vi empresas gastarem centenas de milhares de reais por quererem desenvolver um NHibernate proprietário. Embora já faça 10 anos que isso aconteceu, ainda vejo profissionais, pero no mucho, pensando nisso.

Conclusão

Estude o mínimo antes de opinar, e tire suas próprias conclusões.

O Cloud Native .NET é meu principal projeto.

Onde empenho energia para ajudar, acompanhar, direcionar Desenvolvedores, Líderes Técnicos e jovens Arquitetos na jornada Cloud Native.

Conduzo entregando a maior e mais completa stack de tecnologias do mercado.

Ao trabalhar com desenvolvedores experientes, eu consigo usar seu aprendizado com .NET, banco de dados, e arquitetura para encurtar a jornada.

Ao restringir à desenvolvedores .NET eu consigo usar do contexto de tecnologias e problemas do seu dia-a-dia, coisas que você conhece hoje, como WCF, WebForms, IIS e MVC, por exemplo, para mostrar a comparação entre o que você conhece e o que está sendo apresentado.

É assim que construímos fundamentos sólidos, digerindo a complexidade com didática, tornando o complexo, simples.

É assim que conseguimos tornar uma jornada densa, em um pacote de ~4 meses.

Eu não acredito que um desenvolvedor possa entender uma tecnologia sem compreender seus fundamentos. Ele no máximo consegue ser produtivo, mas isso não faz desse desenvolvedor um bom tomador de decisões técnicas.

É preciso entender os fundamentos para conseguir tomar boas decisões.

0 comentários

Enviar um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.

Luiz Carlos Faria

Mensagem do Autor

Espero que goste desse post. Não deixe de comentar e falar o que achou.

Se acha que esse post pode ajudar alguém que você conheça, compartilhe!

 

Lives

Fique de olho nas lives

Fique de olho nas lives no meu canal do Youtube, no Canal .NET e nos Grupos do Facebook e Instagram.

Aceleradores

Existem diversas formas de viabilizar o suporte ao teu projeto. Seja com os treinamentos, consultoria, mentorias em grupo.