training-center / forum

Dúvidas, dicas e sugestões gerais sobre carreira na área de desenvolvimento de software
MIT License
238 stars 10 forks source link

Como deixar meus projetos no GitHub mais apresentáveis e posteriormente usá-los como portfólio? #23

Open afonsoaugusto opened 6 years ago

afonsoaugusto commented 6 years ago

Olá pessoal,

Há algum tempo atrás um desenvolvedor de uma multinacional me falou: "Participe de projetos open source, contribua com a comunidade, tenha um perfil interessante no GitHub".

Já fiz essa pergunta no grupo de e-mails do python-brasil: "Como deixar de forma apresentável meus projetos no git e posteriormente usá-los como portfólio?".

O @rochacbruno me respondeu:

Como ter um git "bonito"? Contribua com projetos OpenSource, crie seus projetos, coloque "código bonito" e útil lá.

Como seria ter um perfil interessante? Contribua com projetos OpenSource, crie seus projetos, coloque "código bonito" e útil lá.

acho que a pergunta seria: Como deixar de forma apresentável meus projetos no git e posteriormente usa-los como portfólio? Contribua com projetos OpenSource, crie seus projetos, coloque "código bonito" e útil lá + escreva um bom README

  1. Como vocês trabalham o seus github's?
  2. Acham valido ter muitos repositórios?
  3. Em um formulário para entrevista ou no CV, vocês colocam o link do seu profile ou do projeto principal?
davidallysson commented 6 years ago

Cara, sobre um git "bonito" eu particularmente tenho remodelado todos os meus repositórios para ficarem "apresentáveis", digamos assim. Quando comecei a mexer com Github não tinha o conhecimento e a experiência que tenho hoje, então, assim, os meus primeiros repositórios só tinha o código jogado lá e pá.. e nada mais. Nem README.md tinha, nem licenças, nem nada desse tipo.

Aos poucos tenho mudado essa realidade dentro do meu perfil. Meu próximo passo, por exemplo, é pegar um projeto parado em Ruby que tenho, documentar ele todo, colocar material para estudo, organizar issues e colocar ele na Divertidalista, que é um repositório com projetos open-source para a galera colaborar.

Atualmente o que tenho nesse repositório foi o trabalho para uma disciplina aqui da faculdade, então ele está parado desde então. Quero remodela-lo novamente para ser um projeto mais atrativo, ativo e colaborativo e colocar lá material que possa guiar o pessoal a fazer contribuições e aprender mais da linguagem e da ferramenta que estou utilizando lá que é o GOSU.

Na minha cabeça não faz muito sentido você ter um repositório parado, a não ser que ele seja um trabalho realmente finalizado e entregue para a alguém (e mesmo em casos como esse sempre é possível melhorar, contribuir, evoluir).

Como diriam os meus professores: um software nunca morre, ou fica estagnado ou evolui.

mahenrique94 commented 6 years ago

E ae @afonsoaugusto a forma como eu organizo meus repositórios seria adicionar uma descrição resumida para ele, adiciono tópicos relacionados ao projeto realizado e por fim crio o README, alguns projetos também crio uma documentação com as páginas do git.

Mas acredito que apenas o fato de você ter os projetos públicos, as empresas já irão dar uma olhada e verificar o nível de conhecimento, escrita, etc...

Meus projetos principais que seriam frameworks ou bibliotecas eu adiciono em meu Linkedin.

Abraços

lucasprag commented 6 years ago

Isso é uma coisa que eu ainda estou aprendendo também, mas até agora eu tenho essas coisas em mente:

Obrigado, e gostaria de ler mais respostas sobre isso =)

mblodorn commented 6 years ago

1 - Utilizo o github como ferramenta de trabalho. Então o reflexo de toda minha capacidade como profissional está nele, sempre tento seguir guidelines para os projetos reais (a maioria privados infelizmente). 2 - Não adianta ter muitos repositórios que não são mantidos, eles apenas poluem, eu mantenho apenas repositórios onde posso achar referências de código úteis e repositórios que podem ajudar a comunidade. 3 - Coloco, mas para esse link chegar nas mãos de alguém que entende, o resto do currículo tem que estar bem atraente tb.

vaaleyard commented 6 years ago

Aproveitando o link com o GitHub, vale a pena fazer um repositório com os exercícios de faculdade que considero os mais interessantes? Não digo os mais simples, mas alguns que são "legais" (alguns difíceis por exemplo) de certa forma, pra quem está no início da faculdade. Pretendo fazer alguns projetos nessas férias pra construir algo bacana e colocar no meu GitHub.

davidallysson commented 6 years ago

Sobre exercícios de faculdade, eu recomendo que vocês façam um repositório com exercícios de sites de competição (Programação Competitiva). Sites como SPOJ, URI, UVA, A2OJ... valem muito mais a pena do que pegar questões da faculdade e colocar suas resoluções no repositório. Peguem questões desses sites, resolvam da melhor maneira possível e coloquem lá... qualquer coisa peçam pra alguém analisar os códigos e sugerir refatorações.

jvrmaia commented 6 years ago

já recebi mto email de recrutador por conta de competições tipo essas que o @davidallysson disse

davidallysson commented 6 years ago

Pois é @jvrmaia e eu digo isso porque comecei meus repositórios com trabalhos da faculdade e depois entrei num curso de Programação Competitiva e, aos poucos, estou começando a migrar as questões, que antes eram dos trabalhos passados nas disciplinas para questões de maratonas de programação. Até OBI vale também, gente. Se quiserem dar uma sacada:

https://github.com/davidallysson/logica-de-programacao

jvrmaia commented 6 years ago

esse foi o meu último repo depois do mundial da maratona https://bitbucket.org/jvrmaia/exceptions

os problemas q já resolvi por ai mantenho aqui https://github.com/jvrmaia/coding4fun

afonsoaugusto commented 5 years ago

recentemente a udacity lançou uma talk que vai de encontro ao nosso tema: https://youtu.be/CWw6DLIGMpU

TiagoDanin commented 5 years ago

Fiz um post sobre isso: https://medium.com/tiagodanin/o-perfil-perfeito-no-github-4eb15d271798

thyagosampaio commented 5 years ago

Fiz um post sobre isso: https://medium.com/tiagodanin/o-perfil-perfeito-no-github-4eb15d271798

Otimas dicas

mstuttgart commented 5 years ago

Pergunta bacana! Concordo 100% com os conselhos que você recebeu!

Faz uns anos que tenho seguido essas mesmas dicas e sempre fez muita diferença pra mim. Quando abrimos alguma vaga de desenvolvedor aqui na empresa, uma das coisas que sempre procuramos ver é o github do candidato.

1. Como vocês trabalham o seus github's?

O meu perfil é usado tanto em projetos pessoais e profissionalmente e também para projetos opensource. Acredito que no geral, o que importa é que o repositório seja organizado, com um README e código bem feito. Pode ser um README simples, mas precisa ser organizado. Isso mostra cuidado e capricho com o trabalho, porque se a pessoa se dedicou a organizar o README pra um repositório de exercício (ou um projeto pessoal), ela irá fazer muito mais por um projeto em que ela estará sendo paga pra manter. Na minha opinião, um README bem feito passa mais credibilidade, ainda mais em casos em que você desenvolveu alguma lib ou ferramenta e quer que outros desenvolvedores colaborem/usem ela.

Nos meus projetos procuro usar este estilo de README: https://github.com/mstuttgart/pycep-correios. E quanto aos códigos, busco sempre seguir as boas práticas de acordo com a linguagem (clean code, testes, documentação e etc).

O importante é você começar a organizar e com o tempo vai encontrando o que funciona melhor pra você e isso acaba virando um hábito. Mas o importante é começar! :+1:

Aqui tem vários modelos de README pra se inspirar: https://github.com/matiassingers/awesome-readme

2. Acham valido ter muitos repositórios?

Sim, desde que sejam coisas úteis. Um número muito grande de repositórios/projetos também fica meio difícil de manter, então é bom usar o bom senso. Acho que em média uns 30 repositórios é uma quantia legal, dependendo do quanto você produz. No caso de repositórios que são forks, acho aconselhável manter apenas aqueles que você realmente contribui ou utiliza em algum projeto seu. Já vi casos em que a pessoa clonou uma infinidade de repositórios e não tinha quase nenhum projeto dela mesmo e não contribuía com nenhum dos forks que ela tinha. É sempre melhor poucos repositórios com conteúdos interessantes do que encher o github "pra fazer volume".

3. Em um formulário para entrevista ou no CV, vocês colocam o link do seu profile ou do projeto principal?

Eu coloco o link do meu github, do linkedin (também é uma boa mantê-lo organizado e atualizado) e do meu blog. No meu perfil do github tem os projetos que trabalho mais e no meu blog também, ficando fácil do recrutador saber mais sobre eles.

É isso! Desculpa o textão, mas é um assunto que curto bastante :grin:

wesleydesenvolvedor commented 4 years ago

Ola

tiago-pimenta commented 4 years ago

Parabéns @davidallysson , seu repo de lógica de programação ficou show !!!

michelbernardods commented 4 years ago

Sobre exercícios de faculdade, eu recomendo que vocês façam um repositório com exercícios de sites de competição (Programação Competitiva). Sites como SPOJ, URI, UVA, A2OJ... valem muito mais a pena do que pegar questões da faculdade e colocar suas resoluções no repositório. Peguem questões desses sites, resolvam da melhor maneira possível e coloquem lá... qualquer coisa peçam pra alguém analisar os códigos e sugerir refatorações.

@Valeyard1 Sobre esses sites de competições e exercícios, eu criei um repositório com vários sites relacionados:

https://github.com/michelbernardods/programming-challenges