Eu sou o programador .1x da minha empresa. Como posso contribuir da melhor maneira? [fechadas]


61

Eu trabalho em uma startup recém-formada de cinco pessoas. Temos um doutorado em aprendizado de máquina, um ex-membro da equipe principal do RSpec e o cara que compila o binário Git para OS X. São apenas os funcionários; o fundador é Ph.D e foi CTO de uma corporação de bilhões de dólares antes de sair para iniciar uma startup (bem-sucedida), e agora deixou isso para iniciar esta. Também podemos conseguir um doutorado em matemática.

Aaaaaaaaa, e aí está eu, estagiária que abandonou a faculdade. Acho que sou bastante inteligente e estou lendo sem parar, mas o delta de experiência, habilidade e conhecimento entre mim e meus colegas de trabalho é de tirar o fôlego.

Então, coloque-se no lugar deles: você tem um jovem estagiário brilhante que tem muito a aprender, mas que é pelo menos enérgico. O que seria irritante? Que utilidade você esperaria tirar dele aqui e agora? O que seria agradavelmente surpreendente se acontecesse?


32
Uma das coisas interessantes das startups da fase inicial é que todo mundo faz tudo - porque há tão poucos funcionários no total. Você terá muitas oportunidades para descobrir o que faz bem e o que as outras pessoas não fazem. Enquanto isso, preocupe-se em criar um ótimo produto, e não em como você se sente intimidado por seus colegas.
James Youngman

3
Pedaços de papel não são tão grandes em comparação com ações e habilidades demonstráveis, mas lembre-se disso. Se você demonstrar algo, o artigo é um detalhe técnico.

6
isso é a melhor coisa da vida, você pode aprender muito com eles. E não pense muito, basta fazer o que todos os programadores fazem.
Sufendy 14/05

4
Você parece Hawkeye cercado por Thor, Capitão América, Hulk e Ironman. Mas ainda assim, Hawkeye também é incrível! : D
bertzzie

20
"cara que compila o binário Git do OS X" == "cara que digita 'make'"

Respostas:


58

O mais importante:

Não fique impressionado com os títulos. Em pouco tempo, você perceberá que seus colegas de trabalho de doutorado também são apenas humanos. E algumas pessoas com Ph.D nunca realmente criaram algo praticamente útil. Lembre-se sempre disso, não se sinta inferior.

O que eu esperaria de você? Para escrever um bom código e fazer as coisas. As chances são de que você é alguém que realmente está trabalhando, ao se descrever como enérgico. Eu já vi muitas pessoas com diplomas que demoraram uma eternidade para realizar tarefas simples, porque estavam concentradas demais nos detalhes etc. Coloque isso em bom uso e forneça um bom código em um tempo razoável e em breve todos o respeitarão.

Mas não desrespeite os outros. Eles provavelmente são mais velhos e você provavelmente pode aprender coisas valiosas com eles. Mas não assuma nada sem pensar. Sempre tente entender e pensar por si mesmo. Eu espero que você copie os comportamentos e conhecimentos deles que realmente funcionam.


11
+1 Eu tinha um doutorado em EE trabalhando para mim por menos de 40k por ano durante 2 anos. Títulos não significam nada - trata-se de habilidades, competência e habilidades de pensamento crítico.
Jonathan Henson

3
Títulos não significam nada. Educação não significa nada. Experiência não significa nada. Certificações não significam nada. Usar suas ferramentas para produzir resultados é tudo.
Chuck Conway

Isso parece ... estranhamente sábio.
temporary_user_name

Assim como você deve mostrar respeito a seus colegas, você tem o direito de esperar que eles retribuam. Nunca esqueça que eles podem aprender coisas com você - eles quase certamente não sabem tudo.
mattnz

41

A humildade ajuda muito

Com sua atitude humilde, duvido seriamente que você seja irritante. A humildade ajuda muito. (Isso é verdade tanto para fotos quentes quanto para estagiários.)

Se sua função é apoiar explicitamente os outros, você pode ter certeza de ser útil simplesmente perguntando. "Que tarefa irritante posso tirar do seu prato?"

Outra coisa que você encontrará é que a maioria das pessoas gosta de se sentir apreciada. Se você realmente admira os membros da sua equipe, pode pedir muito e aprender muito com eles. Eles vão se sentir lisonjeados, mas será genuíno. Também o ajudará a aprender e a se tornar mais útil.

Por fim, saber menos do que eles pode ser útil por si só. Por exemplo, você provavelmente será melhor escrevendo documentação para APIs, porque fará as perguntas que os de fora farão, mas que parecerão óbvias demais para os outros.

E quem sabe? Você pode achar que, por ser servo, se torna um líder.


7
+1 para "você fará as perguntas que as pessoas de fora perguntariam" - isso é especialmente difícil para especialistas que trabalham duro nos detalhes, que podem pensar que estão dando um passo para trás para ver o quadro geral, mas não estão nem perto qualquer idéia de como as coisas são para pessoas de fora (clientes!) novas na coisa.
DarenW 14/05

17

Você já tem muitas boas respostas. Acho que posso contribuir compartilhando minha experiência em uma posição semelhante.

Antecedentes: trabalho em meio período em um departamento de P&D de uma grande empresa há alguns anos, enquanto minha principal ocupação estuda CS. As pessoas com quem trabalho na maioria das vezes têm doutorado ou mestrado em EE, CS, matemática e física. Comecei como um noob completo, mas aprendi muito nesses poucos anos.

O que seria irritante?

  1. Fazendo perguntas que eu poderia responder facilmente usando o Google
  2. Interromper outras pessoas com muita frequência fazendo uma pergunta. Se você tiver uma pergunta que não seja bloqueadora, faça outro trabalho até poder fazer sua pergunta sem interromper a pessoa que você pergunta. Você pode coletar algumas perguntas e, em seguida, perguntar o horário da outra pessoa ou esperar até que a pessoa pergunte sobre o seu progresso ou um bom momento para conversar com ele, por exemplo, quando ele já foi interrompido por um telefonema, no fim de um intervalo, então diga a ele "Eu fiz isso e aquilo, mas atualmente estou preso aqui e ali".
  3. Se você ficar preso (depois de esgotar o Google e outros recursos), peça ajuda. Nada pior do que descobrir que alguém ficou preso por 2 dias em algo que você poderia ter resolvido em 5 minutos (por Neil White, nos comentários)
  4. Não tente ser mais esperto do que todo mundo.

Que utilidade você esperaria tirar dele aqui e agora?

  1. Faça coisas que os outros achem fáceis / irritantes de uma maneira que realmente ajude a equipe. É realmente tudo isso.

O que seria agradavelmente surpreendente se acontecesse?

  1. Que você faça a maior parte do seu trabalho de maneira satisfatória e se envolva cada vez mais no trabalho da equipe.

Mais algumas dicas:

  1. Seja humilde.
  2. Mostre interesse no trabalho dos outros.
  3. Se eles lhe explicarem algo, entenda. Caso contrário, peça que expliquem de uma maneira, para que você tenha pelo menos a idéia básica.
  4. Ser confiável. Tente fazer o trabalho da melhor maneira possível.

3
Além do "O que seria irritante", sugiro outro: Se você ficar paralisado (depois de esgotar o Google e outros recursos), peça ajuda. Nada pior do que descobrir que alguém ficou preso por 2 dias em algo que você poderia ter resolvido em 5 minutos.
Neil White

@ Neil: você está absolutamente certo! Você se importaria se eu mesclasse seu comentário na minha resposta para que seja mais abrangente?
mort

11
+1 para I did this and that, but currently I'm stuck here and there. O mais importante é mostrar que você tentou e entendeu as respostas.
Zenon 14/05

@ mort Claro, vá em frente!
Neil White

9

Bons conselhos de outras pessoas até agora. Para responder suas perguntas específicas:

  • O que seria irritante?

Seria irritante se você fizesse perguntas sem fazer sua lição de casa primeiro. Pedir ajuda depois de fazer o que puder para resolver o problema primeiro é bom. Mas se alguém é capaz de encontrar a resposta através de uma simples pesquisa no Google ou lendo o manual, isso é irritante.

  • Que utilidade você esperaria tirar dele aqui e agora?

Presumo que você já tenha algum tipo de projeto / atribuição. Espero que você consiga concluir isso com uma supervisão mínima.

  • O que seria agradavelmente surpreendente se acontecesse?

Uma surpresa agradável seria se você terminasse seu trabalho mais cedo. Então, você poderá trabalhar em mais projetos com crescente complexidade, o que comprova sua confiabilidade. Outra surpresa seria se você conseguir antecipar as necessidades da equipe e trabalhar para satisfazê-las de lado. Sua equipe precisa de um ambiente de criação automatizado, estrutura de teste automatizada, configurações específicas de computador / rede para teste, etc.? Estes podem ser coisa periférica


4

Resposta curta: Descubra o que a equipe precisa e, talvez, o que você mais gosta, e trabalhe para fornecer isso.

Resposta mais longa: Nos estágios iniciais de uma start-up, na maioria das vezes, todo o trabalho está disponível; todas as tarefas que precisam ser feitas ou tarefas que as pessoas desejam fazer estão disponíveis para todos os que tomam. Suas preferências podem literalmente moldar a direção que a empresa segue.

Interessado em RH? Assumir as tarefas de contratação. Ou talvez faça a folha de pagamento. Interessado em programação? Descubra qual idioma a equipe deseja usar. Tente escrever alguns testes de unidade para parte do código. Odeio escrever relatórios? Então não. Veja se você pode delegar essa tarefa a outra pessoa e trabalhar em direção a uma solução construtiva. Reserve um tempo e pense no que você pode querer fazer e tente.

É importante lembrar que, quando se trata de pequenas empresas iniciantes, há muito mais a fazer do que apenas programar. Se você deseja codificar, ótimo! Se você preferir fazer outra coisa, isso também é bom! Aprenda rápido, faça muitas perguntas e desafie a si mesmo.


1

Não tenho certeza de quão útil seria minha resposta, mas já estive onde você está agora. Cercado por pessoas que eu senti / sabia que tinham muito mais a contribuir do que jamais teria. Como agir nesta posição? Aprecie-o em vez de sofrer. Em vez de pensar o quanto você não sabe, pense no que pretende aprender e experimentar junto com essas pessoas. Use-os como um recurso, seja respeitoso e tente coletar qualquer informação e experiência - torne-se uma esponja ...

Agora, isso não significa que você precise parar de tentar fazer as coisas, mas quando o fizer, tente fazê-las olhar por cima do ombro e revisar seu trabalho à medida que avança. Tente concluir um trabalho e, em seguida, ouça o que eles têm a dizer sobre isso - anote os comentários que eles fazem e tente implementá-los para criar um código melhor. Não tenha medo de fazer perguntas, apenas seja respeitoso e tente fazer boas perguntas - tente absorver os dados e considere sua pergunta imediata antes de perguntar - talvez a resposta já tenha sido fornecida ... As melhores pessoas gostam de ensinar e eu Aposto que eles gostariam de compartilhar seus conhecimentos e filosofia de vida com você.

Na minha situação, tentei fazer isso e, sempre que funcionou para mim, eu era o mais feliz, nunca entendi por que eles me mantinham, mas tive o melhor tempo e gosto de pensar que me tornei um programador melhor e até homem como resultado dessa experiência.

Tudo isso não quer dizer que você deva se subestimar - você provavelmente é muito melhor do que se acredita, mas, como as pessoas escreveram aqui, títulos e diplomas nem sempre são tão impressionantes em situações da vida real e a humildade é um longo caminho. Portanto, seja respeitoso com todos, ouça, absorva - mas tire suas próprias lições da experiência - às vezes é melhor aprender o que não fazer.

Boa sorte.


1

Já existe muita coisa apresentada aqui, então não vou repetir o que foi dito.

De relance, parece-me que você tem especialistas e um líder com habilidades / idéias de gerenciamento. Isso é bom, mas está incompleto .

Você é o pragmático: facilitar a vida deles.

Há pelo menos duas áreas que você pode cobrir:

  • aprofundando os detalhes técnicos do idioma escolhido pela startup
  • melhorar a qualidade do código e suavizar os ângulos difíceis de trabalhar com ele

Técnico

Esses caras são especialistas em suas áreas, e isso é bom, mas isso não significa que eles sabem como sair de um saco de papel. Sinceramente, tenho visto pessoas muito brilhantes escrevendo código horrível e insustentável.

Você tem a oportunidade de se tornar o líder técnico aqui. Aprenda o idioma de dentro para fora, até conhecer todas as sutilezas. Aprenda os idiomas que a comunidade usa. Pesquise as bibliotecas úteis que existem por aí.


Qualidade

Existem tarefas ingratas, mas úteis:

  • quem mantém o repositório de código fonte?
  • quem escreve / mantém os testes?
  • quem monitora a aprovação da suíte de testes? e identifica os culpados? e pingar os infratores implacavelmente?

Existem algumas etapas que ajudam, sejam muito formais ou não:

  • como você revisa os commits? (existe uma propriedade associada a algumas áreas do código?)
  • como você planeja o trabalho / tarefas?

Existem muitas atividades periféricas em torno de ter idéias e escrever código.

Você tem a oportunidade de se tornar o líder em qualidade aqui. Aprenda as melhores práticas do setor (parte de "Agile", parte de scrum, parte de TDD, ...) e componha um processo que se adapte à sua empresa. Aprenda a construir sistemas (make, cmake, ninja, o que for) e escreva os scripts que facilitam a construção / implantação. Verifique o Jenkins (ou o que for) e crie um servidor de integração contínuo.


Eles são impressionantes em seus respectivos domínios e isso é ótimo. Como no momento você não é especializado, eu diria que é hora de identificar as fraquezas (você também pode pedir a opinião delas) e preencher uma (s) lacuna (s)!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.