ti-enxame.com

Trabalhando como programador único em uma empresa não tecnológica

Trabalho como desenvolvedor back-end, desenvolvedor front-end, administrador de sistemas, help desk e "cara que conhece computadores" em uma pequena empresa de marketing com cerca de 15 pessoas.

Fiquei me perguntando se outros poderiam compartilhar suas experiências voando sozinhos em empresas que não estão necessariamente inclinadas para o setor de tecnologia.

Originalmente, aceitei o trabalho para fazer a transição do desenvolvedor/designer front-end para o codificador em tempo integral. Tem sido uma boa experiência até certo ponto. Definitivamente, tenho o papel de programador de 'rock star' - porque, francamente, ninguém realmente entende o meu trabalho.

Ultimamente, parece uma posição muito solitária. Eu raramente pego idéias fora das pessoas, e todo mundo me parece que eu tenho poderes mágicos que farão todos os computadores funcionarem e nos levarão primeiro às pesquisas do Google. Também senti uma forte desconexão entre o que dizemos que queremos (projetos com grandes cronogramas de desenvolvimento de meses) e o que realmente fazemos (copiar e editar nossos sites várias vezes).

Então, quem mais se vê sendo o 'técnico' de uma empresa que acha que a tecnologia é um pouco mágica, e qual a sua opinião sobre a sua situação?

37
Bryan M.

Aproveite a situação que você tem - até certo ponto, acho que você tem um pouco de "grama verde". Desculpe, não estou tentando ser engraçado. O que estou dizendo é que todas as posições em todas as empresas têm deficiências. Os seus estão começando a chegar até você mais porque são muito familiares. Mas, nas empresas de tecnologia, compromissos e horários se tornam um problema. Em grandes empresas não-tecnológicas, superar a estupidez e o procedimento político pode ser um grande problema.

Então aproveite o que você tem agora; aprenda o que puder. Depois de acreditar que realmente não pode aprender mais, provavelmente é hora de seguir em frente. Não há mal nisso; parece que você é uma daquelas pessoas que precisam crescer para serem felizes com um emprego. Sua empresa atual deve entender que, quando você chega a esse ponto e honestamente, se não, sair é definitivamente a coisa certa a fazer.

Dito tudo isso, há mais que você pode fazer na sua posição atual.

Se você estiver se sentindo solitário, faça algumas alterações para eliminar esse sentimento.

  • Use comunidades on-line para trocar idéias das pessoas (o StackOverflow é ótimo para isso).
  • Faça uma pesquisa com o Google para descobrir o que seria necessário para conquistar sua empresa primeiro e depois montar uma proposta para que isso acontecesse.
  • Ao passar por projetos, tome a iniciativa e mude como as coisas acontecem. Não vá para projetos impraticáveis ​​e longos. Em vez disso, proponha melhorias incrementais de um mês. Ao longo de um ano, elas se somam e podem realmente ajudar você a sentir que realizou alguma coisa.
27
Jeff Siver

Há uma desvantagem distinta em ser o único desenvolvedor - você não tem ninguém com quem aprender.

Na minha opinião, a melhor maneira de se tornar um programador melhor é trabalhar com pessoas que são melhores desenvolvedores. Se você é o desenvolvedor solo, precisa se esforçar para aprender novas tecnologias, conceitos e recursos de linguagem.

Eu acho que é importante para qualquer programador sério se cercar de outros programadores que podem desafiá-lo no que ele faz. Se você está trabalhando sozinho, está perdendo uma grande parte do que é a programação.

Você provavelmente pode ganhar um salário decente fazendo isso e se tornar indispensável, mas a longo prazo você não vai crescer o máximo que puder e acho que as desvantagens superam as vantagens nesse caso.

21
Jaco Pretorius

Existem vantagens e desvantagens.

Você listou a desvantagem mais importante para mim: você não pode compartilhar com os colegas. Mas você está aqui conosco, certo? Você pode compartilhar conosco.

As principais vantagens são as seguintes:

  1. Você é o melhor em seu campo na sua empresa e você estará lá por um longo tempo. Isto é muito importante. Em grandes empresas, onde você tem dezenas de desenvolvedores, há muita concorrência e a maioria é afetada por isso. Isso é estúpido, mas é a natureza humana.
  2. Como é uma empresa pequena, é provável que você obtenha a aprovação para contratar novas pessoas de TI que você gerenciará. Isso colocará em uma posição agradável onde você terá muitas opções.
  3. Sendo o único a gerenciar TI (mesmo em uma pequena empresa), é uma oportunidade. Você será creditado pelos sucessos.
9
user2567

Estive nessa situação a maior parte da minha carreira. Aqui estão os prós e contras como eu o vejo:

Prós

  • Você geralmente se envolve em mais do que apenas programar; você também atua como analista de sistemas, arquiteto e desenvolvedor.
  • Maior exposição ao negócio real, pois você realmente precisa saber o que está acontecendo, por não ter um analista/arquiteto para lidar com o trabalho de design

Contras

  • Você atingiu o teto de vidro em quase todas as instâncias desse cenário. A menos que você esteja em uma empresa rara que planeja expandir seu departamento de TI/Software, você nunca será promovido, pois não há nada a ser promovido e provavelmente nunca poderá contratar pessoas sob você.
  • Provavelmente sobrecarregado, possivelmente mal pago
  • É fácil ficar frustrado por não ter ninguém para rejeitar ou debater idéias, você basicamente precisa seguir seu instinto ou passar muito tempo em sites como este ou IRC ou qualquer outra coisa que fale para seus colegas.

Por fim, eu diria que não é uma boa escolha de carreira, a menos que você tenha um interesse pessoal nos negócios, se é um negócio que você deseja mudar da TI ou se você é um amigo próximo/relativo às pessoas que dirigem a empresa. Você aprenderá muito sobre não-software, mas sua experiência é bastante reduzida, porque você sempre terá um monte de coisas. Em todas as experiências, exceto as mais raras, você nunca será capaz de melhorar a empresa se a configuração deles for ruim (por exemplo, hardware de baixa qualidade, código/banco de dados incorretos) e você nunca poderá contratar pessoas sob você e depois se tornar um verdadeiro gerente.

Quando eu trabalhava em uma pequena loja para seis pessoas há dois anos, exatamente nessa função, meu título era "Diretor de TI", mas eu não tinha relatórios e era o administrador de sistemas/desenvolvedor/all-in-one do DBA. Embora eu tenha aprendido um pouco sobre como lidar com a gerência sênior em decisões de tecnologia, nunca recebi os recursos para realmente fazer qualquer coisa (ou seja, eu não tinha relatórios, orçamento e não estava autorizado a tomar decisões) e, como tal, eu riria de qualquer entrevista real com o gerente, porque eu não era um gerente real, mas um "cara de TI" com um título grandioso. A estagnação acabou causando mais mal do que bem e acabei com um bom número de questões relacionadas à saúde (úlceras) devido ao estresse de ter que gerenciar uma dúzia ou mais de coisas com um orçamento apertado, com zero apoio ou assistência.

Eu faria isso de novo? Somente se eu soubesse que a empresa estava atrás de mim assumindo as rédeas como gerente de TI e me desse A) Os recursos de que preciso para fazer meu trabalho, seja um orçamento para software/hardware, a capacidade de contratar pessoas ou pelo menos os menos contratam bons contratados e B) O apoio para tomar decisões fundamentadas para a empresa; basicamente sendo tratado como um executivo/gerente (porque se você é a única pessoa de TI, você é essencialmente o CTO/CIO e espera-se que converse quase diariamente com a gerência sobre a direção da tecnologia da empresa) e não como um funcionário.

Situações como essa quase nunca saem bem, a menos que você encontre um caso raro com empresários que se importam em crescer e desejam para aumentar seu departamento de TI. Em um caso como esse, você é ouro se quiser se tornar um gerente. Na maioria dos casos, você ficará esgotado e não terá nada para mostrar, exceto um título de destaque que nenhum gerente de verdade aceitará como válido.

8
Wayne Molina

Passei alguns anos como programador solo em uma empresa que não é de tecnologia. Fui contratado por minhas habilidades técnicas, mas logo encontrei um uso para minhas habilidades de programação (de escrever pequenos utilitários a projetos de desenvolvimento de tamanho razoável).

Um dos benefícios foi que eu pude ler as "melhores práticas" e implementá-las na organização (por exemplo, controle de origem, teste de unidade, teste funcional etc.).

Ele também me deu uma visão do ciclo de vida completo, desde a coleta de requisitos e a especificação de casos de uso até o suporte ao lançamento e o gerenciamento de lançamento.

Sinto que a experiência me tornou um desenvolvedor mais completo, e a experiência foi um benefício agora que trabalho para uma empresa de desenvolvimento de software.

Com relação a me sentir solitário, eu concordo - me senti da mesma maneira. As comunidades da Internet são úteis para trocar idéias e os grupos de usuários locais também podem ser divertidos. Não tem um local? Comece um - provavelmente haverá pessoas locais para você no mesmo barco!

6
Chris Buckett

Eu estou em uma situação semelhante. As coisas estão lentas no momento, mas temos uma nova linha de negócios que estamos iniciando internamente e outra a partir de uma compra. As coisas mudam muito rapidamente. Projetos vêm e vão. Ele fica solitário e a família de sites SO ajudou técnica e pessoalmente.

Sendo tudo igual, prefiro fazer parte de uma equipe, mas minha última empresa teve um pequeno grupo de desenvolvedores. Sempre trabalhamos em diferentes projetos de forma independente. Perdemos nosso gerente, que foi temporariamente substituído pelo chefe de contabilidade. Sua idéia era deixar que administrássemos nossos sentimentos e lidar com todos os relacionamentos com fornecedores, gerenciamento de projetos, reuniões etc. Saí antes que eles encontrassem um substituto; Eu simplesmente não aguentava mais. Como eu disse, todas as coisas são iguais.

Eu me envolvo com pessoas de outros departamentos em projetos. De vez em quando, eu começo a trabalhar com um desenvolvedor de outra empresa que estamos tentando integrar em nossos aplicativos.

Quando eu trabalhava em casa, tinha mais flexibilidade para ir a um grupo de usuários local (ficava a cerca de 45 minutos). Desde que eu viajo de trem até a cidade, tem sido mais difícil comparecer. Eu gostaria que houvesse algo mais perto.

4
JeffO

Minha experiência foi semelhante à de ChrisB. Eu fui efetivamente o único desenvolvedor de aplicativos do meu departamento por três anos, até que (recentemente) contratamos um segundo desenvolvedor, e isso mudou muito a situação.

O melhor de ser apenas técnico é que você pode aprender algo novo e implementá-lo sem convencer ou treinar mais ninguém. Depois de ter outras pessoas técnicas, você precisará carregá-las com você, o que atrasa bastante as coisas.

A grande desvantagem é que há um limite para o que você pode ou aprender sozinho, portanto, é necessário trabalhar mais para se manter disciplinado e continuar progredindo e, eventualmente, atingirá um limite. Penso que, uma vez atingido um determinado ponto, você não pode progredir facilmente, exceto interagindo com desenvolvedores mais especialistas do que você - os defensores das idéias de Artesanato de Software têm muitas coisas interessantes a dizer sobre orientação.

3
Stuart Ellis

Conheço pessoas nessa posição. Eu diria que a pergunta crítica é o quanto eles respeitam você. Existem empresas muito pequenas que adotam a atitude de que o programador é um mal necessário (um exemplo muito bom que eu conheço era de uma empresa familiar) e empresas muito pequenas que considerarão o programador o especialista em computadores residente. Parece que você é respeitado, principalmente porque não fala em ter que fazer as tarefas estranhas que as pessoas acabam fazendo em empresas muito pequenas.

2
David Thornley