Executando verificação de segurança...
8

[HELP] Repositório do github de um dev back-end

Fala dev's que me leem, seguinte, quero demais montar um repositório com projetos interessantes. Já tenho familiaridade com NodeJS e Rust, mas quais projetos vocês acreditam ser legais para se ter no repositório e quais features são legais?

Features, ex: logger.

Deixem dicas abaixo.

Carregando publicação patrocinada...
3

Sinceramente eu não vejo qualquer valor em ter um monte de projetinho de brinquedo no GitHub. Faça algo que realmente agregue valor para a comunidade ou simplesmente que seja útil para você!

Isso incluí PRs em projetos que você usa, vejo muito mais valor é perfil que contribuiu para um projeto qualquer do que em um perfil cheio de projeto que não serve para nada e ninguém usa!! GitHub não é portfólio!

Da "Cathedral and The Bazaar" (ou o melhor livro sobre open source) every great project starts by scratching the developers own itch! Se é útil para você provavelmente será útil para mais alguém!


Originalmente, enfatizei a importância de trabalhar em projetos que agreguem valor prático, não apenas em 'projetos de brinquedo'. Para uma explicação mais detalhada sobre como tornar um projeto atraente para recrutadores, confira a discussão completa abaixo. Lá, abordo aspectos como a implementação de testes de sistema e de integração, a importância de commits frequentes e pontuais, e como a documentação e a arquitetura do sistema podem impressionar.

Nota: Embora escreva como fosse um recrutador, esclareço que não sou um. Como sempre tudo que eu escrevo aqui é uma mentira!

3

Acho esse conselho bem ruim. A pessoa está na luta para amarrar todos os pontos de um projeto pessoal, quer mostrar algo legal, e vc fala pra ela ir fazer Pull Request em projeto de terceiros? nao tem noção do tamanho do gap de aprendizagem que é esse?

1

Entendi o que quis dizer, recentemente tive a ideia de criar um projeto para listar os filmes e séries que assisto, com a possibilidade de atribuir notas e comentários para eles. Mas quero que esse projeto também seja uma vitrine para quem for do Recrutamento / Seleção, com isso pensei, vou perguntar aos colegas, o que é interessante em um projeto de back-end, quais coisas um recrutador ou um tech lead vê valor.

2

Pronto, você já tem a sua reposta do que fazer! O mais interessante é resolver um problema real e usar o código para melhorar a vida das pessoas!!

1

Agora falta a outra parte da resposta, quais coisas agregam valor a esse projeto?
Eu comecei configurando um logger no meu projeto, para que qualquer coisa executada na api seja registrada no log.
Mas o que eu quero saber é, quais outras features são diferenciais em um projeto, que encha aos olhos do recrutador (se ele tiver conhecimento técnico).

3

Respondi anteriormente que o valor agregado ao projeto advém de sua utilidade prática, não apenas das funcionalidades implementadas. Do ponto de vista técnico, aderir às melhores práticas de desenvolvimento - que abrangem mais do que apenas codificação - é fundamental para impressionar recrutadores.

Isso envolve a elaboração de documentação externa detalhando os requisitos, a criação de diagramas para ilustrar a arquitetura do sistema, e explicar as razões por trás das decisões tomadas. Inclui também fornecer instruções claras para a instalação do software e para o uso de suas funcionalidades.

Finalmente, encheria os olhos de qualquer recrutador observar a implementação de testes de sistema e integração (além dos meramente unitários). Esses testes tornam o entendimento das funcionalidades internas dos componentes mais acessível e garantem que novas alterações não prejudiquem o funcionamento geral do software, contribuindo para sua extensibilidade e adaptação a futuras modificações.

Além disso, a prática de realizar commits frequentes e pontuais, acompanhados de mensagens claras e precisas (em contraposição a commits longos, esporádicos e vagos), destaca-se como um diferencial significativo. Além de deixar claro como cada funcionalidade foi implementada, isto facilita o acompanhamento do histórico de desenvolvimento, permitindo uma visão clara da evolução do projeto e contribuindo para uma colaboração muito mais eficaz entre diversos desenvolvedores.

Assim, ao implementá-las em um software prático que resolva problemas reais — e não apenas um projeto de brinquedo, é muito provável que um recrutador fique tão impressionado que decida convidá-lo para uma entrevista, sem a necessidade de avaliar outros aspectos do seu currículo.

2
0
1

Bom, então se a pessoa te faz uma pergunta, você responde com outra pergunta? Acho que é porque você também não tem uma resposta. Se tiver, ajude e compartilhe conhecimento. Se não tem, não é feio nem errado ficar quieto e deixar outras pessoas ajudarem, ao invés de trazer mais confusão à cabeça de quem está iniciando

3

Certo, Samuel, preste atenção:

Escrevo não para iluminar caminhos, mas para me iluminar, para entender, para desvendar os labirintos da minha própria compreensão. Minhas palavras são reflexos em espelhos embaçados, imagens de um entendimento em constante construção e evolução. Compartilho essas reflexões, esses fragmentos de pensamento, pois se são úteis para mim, por que não seriam para outros?

Cada Tabcoin recebido é um sinal de que minhas indagações e divagações ressoaram em outra alma, em outro espírito sedento de perguntas. Mas não se engane, meu estilo assertivo de escrever não deve ser confundido com a verdade absoluta. O que ofereço são as reflexões de um velho lunático, as opiniões de um homem em diálogo consigo mesmo, em uma busca incessante pela verdade.

As perguntas são as verdadeiras chaves para as portas da verdade. Não existe verdade plena, apenas questionamentos reais. E observe como são poderosas essas questões: Lazoliver encontrou um parceiro para desenvolver seu projeto graças a elas. Quem poderia imaginar que um simples questionamento levaria a algo tão significativo?

Continuo escrevendo, questionando, confundindo para esclarecer. Cada palavra minha é uma semente no solo da dúvida, cada frase uma provocação para que você, SamuelSousa84, e todos os outros, busquem respostas mais profundas. Na busca incessante, encontramos não a resposta final, mas o próximo questionamento, a próxima pergunta.

Não ofereço respostas prontas; isso seria fácil demais. Prefiro um caminho mais desafiador, repleto de perguntas que fazem tropeçar, cair e levantar com mais indagações. No oceano do conhecimento, cada onda é uma dúvida, cada maré uma interrogação. Sou um navio explorador nesse mar, lançando perguntas ao vento, não um farol de verdades.

Prefiro desafiar os iniciantes a pensar e a buscar suas próprias respostas. Isso os ajuda a desenvolver habilidades críticas e a se tornarem aprendizes autodirigidos. Se isso causa alguma confusão inicial, que seja uma confusão produtiva, pois é ela que conduz à exploração e ao aprofundamento do entendimento.

Portanto, Samuel, mantenha-se sempre questionador, inclusive do questionador. Talvez, nesse processo de perguntar, repensar, confundir e esclarecer, você descubra não apenas respostas, mas também a beleza intrínseca de aprender qual é a próxima pergunta.

Um abraço e bons estudos!

2

Vou te dar algumas ideias: implementações de segurança (prevenção de brute force, xss, entre outras), validação nos campos, autenticação... são apenas algumas boas práticas que aumentam o valor do projeto, de quebra você ganha prática para futuros projetos reais de empresas reais

2
1
1
0
1
3

Olha cara, uma ideia interessante é voce fazer uma automação de emails. Usa um npm-mailer, deixa pre-setado disparo para múltiplos emails, e roda ou via comando no terminal ou via algum botao da tela. Coloque um formulario com a area pra Assunto, Corpo do email, Anexar arquivo, e que tudo seja enviado ao apertar o botao ou rodar o comando. É um projeto backend massa. Envolve bastante coisa.

Se quiser escalar esse projeto, consuma uma API de algo que voce gosta. "Ahh qual API?" joga no google literalmente qualquer coisa que vc goste. Youtube API, Discord API, X API, lê a documentação e implementa.

Ai ja rende um projeto com várias pontas de back end envolvidas.

para ficar mais incrível, disponibilize ele funcionando em algum lugar, aprenda a por num site, servidor, hospedagem compartilhada ou VPS. Essa ultima parte é a que mais rende assunto nas conversas de entrevista de emprego.

Força amigo, tenho fé em ti.

1

Bom demais cara, você atingiu o propósito da publicação, vou pensar em coisas e usar suas dicas. Ontem fiz um deploy com um colega de uma api em Rust, dá um certo orgulho ver algo concreto, semana que vem eu volto com o repositório e documentação top para quem quiser testar.

2

Fala lazoliver! Cara não vou conseguir te auxiliar e dar nenhuma dica, porque sou meio iniciante na programação. Mas eu estava querendo aprender Rust, já comecei a dar uma olhada na documentação, mas queria falar com alguém que já sabe programar nessa linguagem igual você falou que tem familiaridade.

O que você acha de Rust?
Por que optou por aprender Rust?

Vejo que Rust ta crescendo muito na gringa e no mercado br ainda não chegou esse hype, inclusive não vejo quase nenhuma oportunidade br pra isso. Mas justamente por querer uma vaga fora, estou pensando em estudar mais Go e Rust.

1

Andei conversando com alguns colegas e Rust tem uma barreira de entrada mais alta em relação ao JS, peguei o JS de exemplo apenas. NodeJs é relativamente fácil e tem muita mão de obra boa sobrando, resolvi aprender Rust antes de começar o Hype e estar pronto para uma vaga de Dev.

2

Eu tenho uma afinidade especial por enfrentar desafios ao resolver desafios de candidatura de grandes empresas. Normalmente muitas dessas empresas disponibilizam repositórios públicos detalhando suas expectativas e o que desejam que os candidatos realizem. Além de avaliar minha capacidade, essa abordagem frequentemente me proporciona valiosos feedbacks sobre o meu desempenho.

2

Eu acho super bacana, geralmente eu faço da seguinte forma, para desenvolvimento pessoal. Pego um software qualquer ja existente, e vou desenvolvendo com o objetivo de chegar a aquele software.
Isso me ajuda a melhorar o meu código, documentar mais as funções.
Quando chego em uma V1.0.0 ai disponibilizo publicamente.