Resumo dos meus últimos 5 meses

Desenvolvedor refletindo sobre seu crescimento profissional

Eu quando paro para pensar na minha vida

Cinco meses atrás, eu já era um desenvolvedor sênior competente, mas ainda estava na zona de conforto. Conhecia arquitetura hexagonal na teoria, sabia que Docker existia mas evitava usar, e Grafana era apenas "aquela ferramenta de monitoramento".

Hoje, enquanto escrevo este post, consigo mensurar com precisão que expandi minha confiança e capacidades em 500% - e não é exagero. Posso medir isso pela autonomia técnica que conquistei, pela confiança em propor soluções arquiteturais complexas e pelo domínio técnico que desenvolvi.

Esta é a história de como 5 meses podem transformar um desenvolvedor sênior competente em um arquiteto de software confiante. E talvez inspire você a sair da sua zona de conforto.

Há 5 meses, eu era aquele desenvolvedor sênior que:

Eu estava bem, mas estava subutilizando meu potencial. Era como ter uma Ferrari e dirigir sempre a 60km/h - funcionava perfeitamente, mas não explorava toda a capacidade.

Arquitetura que Ganhou Vida: Ports & Adapters na Prática

Antes: Eu conhecia arquitetura hexagonal na teoria, mas nunca havia liderado uma implementação completa do zero.

Transformação: Ganhei confiança para propor e implementar arquiteturas complexas. Finalmente pude aplicar todo meu conhecimento teórico em projetos reais de grande escala.

Resultado: Hoje desenho e lidero implementações de arquiteturas que:

1// Como eu pensava antes
2class UserService {
3  // Tudo misturado: banco, validação, lógica...
4}
5
6// Como penso hoje
7interface UserRepository {
8  save(user: User): Promise<void>;
9  findById(id: string): Promise<User>;
10}
11
12class UserService {
13  constructor(private userRepository: UserRepository) {}
14  // Só lógica de negócio aqui
15}
16

Containers em Produção: Docker com Confiança

Antes: Eu sabia Docker básico, mas sempre deixava a configuração de produção para outros.

Transformação: Ganhei confiança para gerenciar containers em produção e liderar a containerização de sistemas legados.

Resultado: Agora projeto e implemento pipelines completos com:

1# Meu docker-compose.yml atual
2version: '3.8'
3services:
4  app:
5    build: 
6      context: .
7      target: development
8    environment:
9      - NODE_ENV=development
10  postgres:
11    image: postgres:15
12    environment:
13      - POSTGRES_DB=myapp
14  redis:
15    image: redis:alpine
16

Observabilidade: Grafana + Pino.js

Antes: Eu sabia sobre logs estruturados e monitoramento, mas nunca havia arquitetado um sistema de observabilidade completo.

Transformação: Desenvolvi confiança para projetar sistemas de observabilidade enterprise-grade do zero.

Resultado: Implementei e liderei sistemas completos de observabilidade:

1import logger from "@/logger"
2 /** logs usando pino.js */
3logger.error({
4  error: error.message,
5  userId: req.user.id,
6  endpoint: req.path,
7  timestamp: new Date().toISOString()
8}, 'Falha na autenticação');
9

PostgreSQL: De Competente a Especialista

Antes: Eu dominava SQL e sabia sobre otimização, mas evitava decisões complexas de arquitetura de dados.

Transformação: Ganhei confiança para liderar decisões críticas de arquitetura de banco de dados em sistemas de alta escala.

Resultado: Hoje eu projeto e otimizo:

1// Query antes: lenta e ineficiente
2SELECT * FROM users WHERE email LIKE '%@gmail.com%';
3
4// Query hoje: otimizada com índices
5CREATE INDEX CONCURRENTLY idx_users_email_gin 
6ON users USING gin(email gin_trgm_ops);
7
8

Liderança Técnica: O Soft Skill que Destravou Tudo

Antes: Eu comunicava bem e tinha boas ideias, mas hesitava em liderar decisões arquiteturais importantes.

Transformação: Desenvolvi confiança para liderar tecnicamente e influenciar decisões estratégicas da empresa.

Resultado: Hoje eu:

O Código que Reflete Crescimento

Antes: Código que Funcionava

1// Código de 5 meses atrás
2async function getUser(id) {
3  try {
4    const user = await db.query('SELECT * FROM users WHERE id = ?', [id]);
5    if (user.length > 0) {
6      return { success: true, data: user[0] };
7    } else {
8      return { success: false, message: 'User not found' };
9    }
10  } catch (error) {
11    return { success: false, message: error.message };
12  }
13}
14

Hoje: Código que Comunica

1// Código atual
2export class GetUserUseCase {
3  constructor(
4    private readonly userRepository: IUserRepository,
5    private readonly logger: ILogger
6  ) {}
7
8  async execute(userId: UserId): Promise<Either<UserNotFoundError, User>> {
9    this.logger.info({ userId: userId.value }, 'Fetching user');
10    
11    const user = await this.userRepository.findById(userId);
12    
13    if (!user) {
14      this.logger.warn({ userId: userId.value }, 'User not found');
15      return left(new UserNotFoundError(userId.value));
16    }
17
18    return right(user);
19  }
20}
21

A diferença é gritante:

Autonomia Técnica

Antes: Esperava validação para decisões arquiteturais importantes Hoje: Lidero roadmaps técnicos e influencio estratégia de produto

Pensamento Estratégico

Antes: Focava em soluções técnicas pontuais Hoje: Projeto sistemas que impactam o negócio estrategicamente

Liderança Técnica

Antes: Aplicava padrões arquiteturais estabelecidos Hoje: Defino padrões e influencio a cultura técnica da empresa

Comunicação

Antes: "Vou implementar a solução X" Hoje: "Proposta estratégica: arquitetura Y que resolve problema Z, considerando impactos A, B e C no roadmap"

Crescimento Não É Linear

Não foi um progresso gradual. Foram saltos quânticos de confiança. Uma semana eu evitava liderar discussões arquiteturais, na seguinte estava apresentando roadmaps técnicos para C-level.

Autonomia Se Conquista

Ninguém vai te promover a líder técnico. Você conquista provando que pode tomar decisões arquiteturais estratégicas que impactam positivamente o negócio.

Soft Skills Amplificam Técnicas

Meu conhecimento técnico sólido só gerou impacto estratégico real quando aprendi a liderar tecnicamente e influenciar decisões.

Observabilidade É Superpoder

Sistemas que você pode monitorar proativamente e debugar rapidamente te dão confiança para liderar arquiteturas de alta complexidade.

Arquitetura É Investimento

Tempo gasto pensando em arquitetura se paga exponencialmente em manutenibilidade.

##Para Quem Quer Evoluir para Liderança Técnica

Se você já é competente mas quer expandir sua influência, aqui vai meu roadmap:

Mês 1-2: Confiança Técnica

Mês 3-4: Liderança

Mês 5: Influência

O Segredo Real

Não é sobre aprender novas tecnologias. É sobre desenvolver a mentalidade de líder técnico que influencia estratégia, não apenas implementa soluções.

Conclusão: A Evolução Continua

Estes 5 meses me ensinaram que evolução exponencial é possível quando você combina:

Hoje me considero um líder técnico de verdade - não apenas por conhecimento, mas pela influência estratégica, autonomia e impacto que demonstro.

E o mais incrível? Ainda estou evoluindo. Estes 5 meses não foram o fim da jornada, foram apenas o começo de uma nova fase como tech leader.


Para quem quer dar esse salto: Seu próximo nível de influência pode estar a apenas uma decisão corajosa de distância. Lidere o próximo projeto complexo. Assuma a responsabilidade técnica.

E lembre-se: daqui a 5 meses, você pode estar lendo este post e pensando "nossa, como evoluí desde então".

Happy coding! 🚀

🚀 Newsletter em Breve!

Estamos preparando uma newsletter exclusiva com as novidades mais importantes do mundo Node.js, React e React Native. Você receberá insights práticos, tutoriais avançados, oportunidades de carreira e muito mais!

📧 Em breve, você poderá se inscrever e fazer parte desta comunidade de desenvolvedores apaixonados por tecnologia!

Este post foi escrito por Gustavo Murdiga.