Seja um FullStack nas Soft skills
Tags: career, agile
Published: 2020-02-14 14:40:13

Como diria o Milton Leite (Narrador do SPORTV): ["Queeee faaasee"](https://www.youtube.com/watch?v=fb-xnIhtSgA) pra ser desenvolvedor do Software. 


Mercado aquecido, grandes empresas com desafios surgindo, ótimos salários e crescentes demandas de automatização (para o empreendedor que ainda acha que fazer software é barato e que essa bolha de bons salários para desenvolvedores vai estourar...a sugestão é **diminua a pró-labore e melhore a cultura da sua empresa porque desenvolvedor de qualidade certamente não trabalhará com você**).

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ry57dihmh9imfuqy7jc1.jpeg)
Fonte: https://oglobo.globo.com/

Como diz a excelente matéria do [Globo.com](https://oglobo.globo.com/economia/emprego/mercado-de-tecnologia-tem-deficit-de-24-mil-profissionais-por-ano-24170633), a necessidade de mercado existe. O BOOM das startups corrobora com isso...além do crescimento natural de empresas que já existiam e continuam tentando evoluir e atingir novos mercados.

A matéria toca em um ponto importante: 
```Assédio de empresas estrangeiras e falta de qualificação são alguns dos motivos apontados por especialistas``` 

O assédio estrangeiro é realmente pesado. Há demanda de mercado também existe lá. Como o inglês é presente no desenvolvimento a ida para o exterior está cada vez mais fácil...para os **qualificados**. O que volta ao segundo motivo de carência de profissionais de tecnologia: *Falta de qualificação*. 

E o que é *qualificação*? Basicamente é aquele misto que vimos em uma vaga de emprego de conhecimentos *necessários* + *desejáveis*, que geralmente tá bem focado nas tecnologias que a empresa pratica. O que é necessário para se encaixar nesse arquétipo?

 Existem varias plataformas de ensino como [Alura](https://www.alura.com.br/), [Pluralsight](https://www.pluralsight.com/), [Linkedin](https://www.linkedin.com/feed/) ou conteúdos incríveis na Web que democratizam cada vez mais o conhecimento aplicado de tecnologia. Fica cada vez mais acessível obter conhecimento prático com ótimas didáticas sem necessariamente trabalhar com uma determinada tecnologia no cotidiano.

Mas a qualificação desejada para cargos de desenvolvedor de software vai muito além de labels de Linkedin e seus posts edificantes ou cursos completados. A qualificação para empresas de alto nível passa por um bom balanceamento de *HARD Skills + SOFT Skills*. Diferente do que se pensava no passado, elas **não são antagônicas**.


```HARD Skill: Habilidade técnica para desenvolvimento de uma tarefa. Exemplos no desenvolvimento de software: Conhecimento de linguagens, Fundamentos de computação, conhecimentos de arquitetura, etc.```

```SOFT Skill: Habilidades sócio-comportamentais, ligadas diretamente à capacidade de lidar positivamente com fatores emocionais. Exemplos para qualquer área: comunicação interpessoal, capacidade analítica, resolução de conflitos```

![Alt Cena do Thanos em Avengers falando sobre como tudo deve ser perfeitamente balanceado](https://dev-to-uploads.s3.amazonaws.com/i/t1ne3vt2ask6xvliowdg.gif)

### Desenvolver Software é uma atividade social

*Aquele arquétipo de desenvolvedor que somente desenvolve está cada mais virando só um estereótipo pra quem não entende de desenvolvimento.* 

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/i38npo5dfnlgu5pf8rrl.gif)

Há muita interação social ao desenvolver software, como: Code Review, decisões arquiteturais com o time e todo o colaborativismo envolvido ao entregar uma tarefa. Toda a legibilidade do código que você se esforça em empregar é principalmente *para o próximo e não pra você*. Esse colaborativismo enriquece o conhecimentos de todos à volta. Esse cooperativismo somado à [autonomia faz com que surjam as melhores arquiteturas](https://agilemanifesto.org/iso/ptbr/manifesto.html). 

Alguns conceitos que surgiram do nascimento da agilidade de software em um longíquo 1968 ([lá no artigo da Lei de Conway](https://en.wikipedia.org/wiki/Conway%27s_law)) estão cada mais presentes nas empresas de tecnologia. Seja por modismo, oportunidade de mercado, questão de sobrevivência ou retenção de talentos as empresas também estão passando por uma "transformação digital".

A transformação digital impacta diretamente sua forma de agir como profissional em desenvolvimento. Não é simplesmente uma nova forma de gestão. Ela requer confiança entre o time, boa comunicação, entendimento da problemática da solução, feedbacks e adaptabilidade. Essa cultura de agilidade vai de total encontro com a etimologia da própria palavra software: SOFT, “macio, suave" - WARE "Produto, Mercadoria". O problema que um software trata muda conforme a sociedade muda. Não só a arquitetura tem que ser adaptativa pensando no lado técnico, como a mentalidade do time também.

Aquele desenvolvedor que só "coda" pode até existir...mas a tendência é a *extinção*. A boa comunicação é essencial para entender o que os stakeholders querem com o seu trabalho, e o que você quer deles também. Seja full-stack nas Soft Skills: no relacionamento com o seu time como bom membro de time, assim como se comunique bem em busca dos interesses do time com os demais stakeholders. Seja pragmático, dogmático *JAMAIS*.

![Alt Seja como água, meu amigo "Trecho da entrevista do Bruce Lee"](https://dev-to-uploads.s3.amazonaws.com/i/cupbhwe9pc63y7vg24ax.gif)


Se dedique não só em saber mais sobre tecnologia, como também em ser a pessoa que você quer trabalhar junto. Por maior conhecimento técnico que você possa ter sobre um assunto, nada, absolutamente nada, justifica a arrogância. Isso não é trivial, o conhecimento naturalmente infla seu ego, assim como suas conquistas, ou, as vezes temos alguns valores que são da nossa trajetória de vida que nos tornam piores como membros de time. Se você sente que não acha saída para melhorar nesse sentido, considere procurar um psicólogo, um amigo ou algum tipo de profissional. *Pedir ajuda não é vergonha nenhuma*.  

Pedir feedbacks, fazer análise crítica de seus atos, aceitar críticas construtivas, pedir desculpas, ser humilde em entender que está errado e ser paciente e resiliente em questões que você tem certeza que está certo são exemplos de exercícios diários de Soft-Skills. O que se espera de um bom desenvolvedor de software *são soluções técnicas de qualidade e impacto social positivo onde ele faz parte*.

### Para saber mais

* [Podcast da Lambda3 sobre Soft Skills](https://www.lambda3.com.br/2018/06/lambda3-podcast-101-soft-skills/)
* [Podcast da Lambda3 sobre Soft Comunicação violenta](https://www.lambda3.com.br/2017/02/podcast-31-comunicacao-nao-violenta/)
* [SUPER livro - Pragmatic Programmer](https://www.amazon.com.br/Pragmatic-Programmer-Journeyman-Master/dp/020161622X)