Frases de destaque de “O programador apaixonado”
Recentemente li o livro O Programador Apaixonado: Construindo uma carreira notável em desenvolvimento de software (Chad Fowler). São reflexões do autor de como o o desenvolvimento de software pode ser apaixonante e como podemos melhorar como profissionais nesse processo. Destaco aqui algumas frases e anotações desse livro, e deixo minha recomendação para a leitura dessa excelente obra.
Geralmente há mais compradores para um produto barato do que para um mais caro.
Se você quer permanecer relevante, vai ter de ir fundo no domínio do negócio dentro do qual você está.
Uma pessoa de software deve compreender um domínio não apenas bem o suficiente para desenvolver software para ele, mas também para se tornar uma de suas referências.
Você pode ser “apenas um programador”, mas ser capaz de falar com seus clientes do negócio na língua de seu domínio de negócio é uma habilidade única.
SEJA O PIOR EM QUALQUER GRUPO EM QUE ESTIVER.
Te faz crescer e ver que não é tão ruim assim
Aprenda uma nova linguagem que o faça pensar de uma maneira diferente.
Conselhos influenciados pelo medo tendem ao não perder. Mas pensar em não perder não é o caminho para ganhar! Vencedores assumem riscos. Eles pensam sobre aonde eles querem ir, não onde o resto das coisas estão. Planejamento de carreira guiado pelo medo provavelmente o levará a algum cubículo para o resto de sua vida em vez de ao caminho para a grandeza. Claro, é seguro, mas não é divertido.
Quanto mais domínios e arquiteturas técnicas você já viu e trabalhou, mais está preparado para tomar as decisões corretas em projetos mais desafiadores. Ficar em uma única empresa, trabalhando para subir na hierarquia, é um ambiente limitador para crescer como um desenvolvedor.
Assuma riscos em sua carreira. Não deixe o medo o consumir. E se você não estiver se divertindo, você não vai ser excelente.
É raro encontrar um desenvolvedor que realmente entende a plataforma em que está trabalhando. As aplicações são melhores por consequência, o trabalho costuma ser feito mais rápido.
A frase acima é do contexto que você deve buscar ser um especialista na tecnologia que você quer dominar, a ponto de poder responder essa pergunta, por exemplo:
“Como você escreveria um programa, em Java puro, que trave a Java Virtual Machine?” Silêncio mortal. “Oi?”
MUITOS ACREDITAM QUE SER ESPECIALISTA EM ALGO SIGNIFICA QUE VOCÊ NÃO SABE OUTRAS COISAS.
Assim como um médico especialista não conhece apenas da sua especialidade, você também não deve, não só porque é saudável o conhecimento em outras áreas mas também é uma garantia caso a sua especialidade perca espaço no mercado.
Assim, apesar de que o investimento em uma única determinada tecnologia seja quase sempre uma má ideia, se você precisar fazer isso, considere focar em uma opção open source ao invés de uma comercial.
Se você quer ser realmente bom no seu trabalho, você tem de ser apaixonado por ele. Se você não dá a mínima para ele, isso vai transparecer.
Há uma parte do conhecimento que não é nem técnica nem de domínio específico, e não será ultrapassada em breve: o básico de finanças. Independentemente da sua linha de negócio, se é de manufaturas, assistência médica, sem fins lucrativos, ou uma instituição educacional, ainda se trata de negócios.
É OK DEPENDER DE ALGUÉM. SÓ TENHA CERTEZA DE QUE É A PESSOA CERTA.
Sobre a importância de se ter um mentor:
É difícil saber o que é possível ser feito até que você veja alguém que possa ir além dos limites que você conhece.
Um mentor é alguém em que você pode confiar o suficiente para perguntar “O que deveria ser diferente em mim enquanto profissional?”, porque você sabe que ele não vai apenas criticá-lo, mas sim ajudá-lo a melhorar.
PARA DESCOBRIR SE VOCÊ REALMENTE SABE ALGO, TENTE ENSINAR PARA OUTRA PESSOA.
Do ponto de vista do cliente, eu aprendi que não importa quão legal a tecnologia seja, ela só terá valor se resolver um problema real.
Nós somos pagos para criar valor!
Quão mais divertido seria seu trabalho se você pudesse tratar as tarefas mais chatas com o mesmo desejo fervoroso de fazê-las direito? Quando temos mais diversão, fazemos um melhor trabalho. Então, quando não temos interesse em uma tarefa, ficamos entediados e, como resultado, nosso trabalho também sofre.
Olhe para seu trabalho e pergunte a si mesmo: “Quão bom eu posso fazer isso hoje?”. Você descobrirá que você gostará mais de seu emprego e ele gostará de você.
Sentir-se insubstituível é um mau sinal, especialmente sendo um desenvolvedor de software. Se você não pode ser substituído, isso provavelmente significa que você realiza tarefas de tal modo que os outros não conseguem fazer. Mesmo que todos nós gostaríamos de ser considerados algum tipo de gênio especial, poucos desenvolvedores de softwares são tão inigualáveis que, de fato, deveriam ser insubstituíveis.
Como programadores, sabemos que, quanto mais cedo no processo de desenvolvimento conseguimos descobrir falhas de software, mais robusto ele vai ficar.
DIZER ‘SIM’ PARA EVITAR DESAPONTAMENTO É APENAS MENTIR.
Se um membro da equipe tem a coragem de dizer “não” quando esta é a verdade, então eu sei que quando eles dizem “sim”, eles realmente querem dizer isso. Um comprometimento de uma pessoa assim será mais creditável e terá mais peso.
Você notará que, quando encontrar um guru real em determinada área, ele nunca terá medo de admitir quando não sabe algo. “Eu não sei” não é uma frase para gente insegura.
O jeito mais fácil de nunca tornar algo pronto é nunca se comprometer com nada. Se você não tem um prazo, não há nenhuma pressão ou incentivo suficiente para concluir algo.
Você pode ter feito o melhor produto da história, mas se você não fizer algum tipo de propaganda, ninguém saberá dele.
Você não vai impressionar seu cliente com suas habilidades de programação orientada a objeto. Você pode ser um gênio em design, mas se você não consegue se comunicar efetivamente e não consegue completar seu trabalho a tempo, seus clientes pensarão que você é ruim. Não é culpa deles. Você é ruim.
Você tem algo a ensinar. Você nunca vai se sentir 100% pronto, então talvez você deva começar agora.
Você fica com cara de bobo e faz seus clientes infelizes quando você dá o software certo para as pessoas erradas.
Desenvolvimento de software é tanto desafiador como recompensador. É criativo como uma forma de arte, mas (diferentemente da arte) fornece valor concreto e mensurável. Desenvolvimento de software é divertido!
[]`s