É melhor me especializar em um único campo que eu gosto ou expandir para outros campos para ampliar meus horizontes? [fechadas]

31

Esse é um dilema sobre o qual venho pensando há algum tempo.

Sou estudante de pós-graduação e meus tópicos de interesse são design de linguagem de programação, análise de código, compilação etc. Até agora, esse campo tem sido muito interessante e gratificante para mim, então estava pensando em encontrar um emprego nesse campo e continuar para se especializar nele. Sinto que é um campo relativamente sólido que não "sairá de moda" tão cedo. Eu sempre pensei que, em campos tão complexos, é melhor ser um especialista de verdade do que apenas outro cara que entende superficialmente o que os especialistas estão falando.

Por outro lado, sinto que, ao me especializar dessa maneira, realmente limite minha opção futura. Sempre acreditei firmemente nas abordagens multidisciplinares dos problemas. Talvez eu deva procurar um trabalho de programação geral em que possa ganhar experiência em outros campos, e ocasionalmente aplicar meu campo favorito para resolver problemas. A especialização em apenas um ou dois campos pode me impedir de pensar fora da caixa e causar estagnação.

Eu realmente gostaria de ouvir mais opiniões sobre essa escolha. A verdade é que já estou me inclinando para uma das opções, então a psicologia básica diz que nada vai mudar minha mente, mas eu ainda adoraria ouvir algum feedback.

Carvalho
fonte
Bom andamento. Eu garanto por você. Eu também gostaria de ver outros comentários
PradeepGB
Especialize-se em programação E algo mais que não desapareça, como direito, impostos, linguagem, biologia ou matemática, talvez. Embora as habilidades de TI se tornem inúteis muito rapidamente, outras permanecem. É difícil encontrar (por exemplo) um programador de língua italiana + chinesa que se especialize em impostos. Apenas faça suas apostas com sabedoria. Pense nisso: nos próximos 20 anos como programador (espero) você precisará aprender muito mais coisas do que é necessário para concluir uma tese de doutorado. Nessa perspectiva, outros 2 anos de escolaridade em algo "mais estático" não parecem uma péssima idéia.
Job

Respostas:

21

Especialize-se se você gosta

Como você sabe, se você se especializar, estará automaticamente incorrendo em um custo de oportunidade, pois não será imediatamente elegível para outras tecnologias (por exemplo, programadores Java nem sempre são aceitos imediatamente para trabalhos de otimização de compiladores). No entanto, você precisa equilibrar isso com seu amor pela complexidade inerente à sua disciplina escolhida.

Você diz que quer ser um especialista - bem, vá em frente e reserve um tempo para aprender sua disciplina escolhida. Como comunidade, sempre precisamos de novos especialistas. No entanto, meu conselho é seguir a recomendação pragmática do programador de "Aprenda um novo idioma todos os anos" . Dessa forma, enquanto você faz uma análise lexical profunda da codificação algorítmica, também pode criar um pequeno aplicativo para iPhone que lhe interessa. Você nunca sabe que a polinização cruzada de diferentes paradigmas pode causar uma visão que ampliará sua especialização em novas áreas.

Gary Rowe
fonte
Em relação à sua primeira frase - há também o medo de que um dia eu me cansei daquilo que amo e, em seguida, como especialista, será difícil mudar de campo. Por outro lado, meu interesse nesse campo vem se fortalecendo há um bom número de anos.
Oak
1
@Oak, você nunca pode prever quando se cansará de algo, então escolha um campo com o qual tenha certeza de que está satisfeito e faça o máximo. Se você se sentir cansado, desvie sua atenção para outro trabalho. Se o seu campo escolhido for avançado o suficiente (e certamente soa como é), você deve ter habilidades suficientes para poder captar qualquer coisa. OK, você será um novato, mas dedique-se e logo estará voando.
Gary Rowe
2
Como Oak está interessado em idiomas e design de idiomas, aposto que ele já conhece vários idiomas e o aprendizado de novos idiomas se encaixa basicamente em sua especialização (mais ou menos). Para alguém já interessado em línguas, eu sugiro fazer algo novo e não trivial em um idioma que você sabe: tentar sua mão em AI ou aprendizagem de máquina ou NLP ou escrever um sistema operacional ...
Tikhon Jelvis
20

Eu acho que depende do que você quer da sua carreira ...

A nível técnico : Ser um valete de todos os negócios significa que você pode se candidatar a uma variedade maior de funções do que alguém extremamente especializado. Se você quer ser adaptável, se movimentar e não estar vinculado a um nicho específico, isso provavelmente não é tão ruim. No entanto, a desvantagem é que você provavelmente ficará confinado a um nível relativamente secundário / intermediário de papéis, a menos que se aprofundar em uma área específica.

Especializar-se em uma determinada área é praticamente o oposto do acima. Você provavelmente será capaz de obter um status e uma renda mais altos (se estiver em um bom nicho com alta demanda, é claro), mas provavelmente se tornará alvo dessa especialidade em grande parte.

Portanto, em um sentido amplo, essas duas são as escolhas em nível técnico.

No nível político : se você está falando de "progresso na carreira" em termos de mudança para a gerência e outras coisas, geralmente não importa o que você faz tecnicamente. Praticamente todos os que conheço que passaram para o gerenciamento de uma função de programador o fizeram conhecendo as pessoas e os processos de negócios muito bem em sua organização. Alguns eram especialistas e outros eram generalistas (em termos da tecnologia com a qual trabalhavam) - mas TODOS estavam profundamente arraigados na organização, conheciam bem as pessoas e os processos, e basicamente se tornou lógico para eles começarem a assumir essas responsabilidades.

Portanto, em um sentido básico, se você deseja progredir em sua carreira em termos de subir na hierarquia de gerenciamento, é tudo uma questão de fazer política. Ser um especialista generalista versus especialista não importa tanto (talvez apenas se torne um especialista nos processos e na tecnologia que você gerenciará).

Bobby Tables
fonte
4
Não sei exatamente por que você precisa ser muito especializado para ser classificado como sênior.
Jon
@ Jon: Bom ponto. Eu editei isso.
Bobby Tables
3
Além disso, o Jack-of-All-Trades pode ter uma perspectiva única ao enfrentar um problema, pois pode imaginar soluções adicionais que alguém que conhece apenas uma tecnologia não pode sequer imaginar.
wildpeaks
10

Primeiro, as ofertas de emprego geralmente exageram a quantidade de especialização necessária. Nenhuma empresa coloca "precisamos de um cara que saiba um pouco de Javascript porque não sabemos nada" em uma publicação de emprego; eles colocaram o "especialista em Javascript", porque, apesar de tudo ser igual, eles adorariam ter alguém que fosse realmente um especialista. Isso não significa necessariamente que apenas especialistas são qualificados para o que a empresa precisa fazer em Javascript (e você ficaria surpreso com a frequência com que eles nem sabem o que precisam fazer). Portanto, não se preocupe muito em ser um "especialista"; candidate-se a empregos em que tenha conhecimento das habilidades anunciadas e veja como estão as coisas na entrevista. Ser bom em um trabalho é muito mais do que apenas quantos anos de [idioma de inserção] você tem em seu currículo. E se o trabalho é gratificante,

É sobre "conseguir" um emprego; por "manter" um emprego, ser um JOAT pode ser maravilhoso. Se sua empresa começar a explorar diferentes idiomas e plataformas, estará à frente do jogo. Se sua empresa com sede em MS precisa de repente de um funcionário do UNIX para algo, você será o candidato (ser esse cara ou administrar a contratação de um "especialista"). Manter um emprego significa ser indispensável, aconteça o que acontecer, e JOAT é uma boa maneira de ser esse cara.

Além disso, facilita a obtenção de um novo emprego quando sua empresa fica muito mais fácil :)

EZ Hart
fonte
1
"Se a sua empresa baseada em MS repente precisa de um cara UNIX para alguma coisa" ... oh podemos sonhar, não podemos :)
Jordan
@ Jordan - não há necessidade de sonhar; Eu estive lá. Eu trabalhei por anos em uma loja da MS, mas acabamos acabando com clientes que precisavam de suporte no MySQL e Linux. Aqueles de nós que conheciam o Linux de outros trabalhos e uso doméstico tiveram que intervir até que pudéssemos contratar um administrador do Linux. Ele faz acontecer :)
EZ Hart
7

Bem, sim e não. O problema é que você nunca será uma estrela do rock. Você nunca será o cara que pode fazer coisas com C que ninguém mais pode fazer. Sua falta de foco impede esse tipo de excelência.

Por outro lado, quando a administração decide que eles não podem pagar uma tonelada de programadores, eles não vão atirar -lhe , para manter -lo . A flexibilidade tem seus benefícios.

Sou Jack e meu departamento teve uma redução de 80% nos últimos 4 anos. No entanto, aqui estou eu. Em parte é porque sou mais desfocado do que a maioria. Eu gosto de receber uma tarefa que eu não conheço, e meus chefes gostam do fato de eu dizer "Claro!" não importa que merda estranha eles inventem. E, quando você entende o cenário geral, é um tipo de estrelato que a maioria dos especialistas nunca atinge, e pode ser lucrativo.

Então, se você quer ser uma estrela do rock, precisa se concentrar, porque ninguém pode ser melhor do que todos. Mas se você estiver procurando por estabilidade, escolha flexibilidade, porque ser flexível é mais comercializável do que ser mau.

Satanicpuppy
fonte
3

Generalista vs. Especialista é um artigo do CIO.com, mas provavelmente existem dezenas de artigos ou postagens de blog de pessoas tentando ver se um é melhor que o outro. Cada um tem suas vantagens e desvantagens. Qualquer um que queira dizer que um supera totalmente o outro pode ser tendencioso até certo ponto.

Não se esqueça de que existe uma possível ilusão de cada lado de sua escolha. O que você vê como especialização pode ter vários sabores. Por exemplo, você consideraria os desenvolvedores da Web em geral especialistas ou generalistas? Alguns podem ver isso como uma especialização e outros ainda o consideram bastante amplo, já que muitos aplicativos baseados na Web hoje em dia podem ter todos os tipos de componentes que podem requerer conhecimentos diferentes até certo ponto.

Embora as áreas listadas me façam pensar que deseja trabalhar para uma empresa de software, pode haver algumas partes da Tecnologia da Informação que possam usar habilidades semelhantes de certa forma. Você pode descobrir quanta personalização é feita em vários softwares prontos para fazê-lo funcionar e quão bem isso é um investimento para a maioria das empresas para dar um exemplo imediato.

JB King
fonte
3

Por outro lado, sinto que, ao me especializar dessa maneira, realmente limite minha opção futura.

Lembrar. Seu futuro se estende por décadas.

A tecnologia atual terá diminuído significativamente à medida que novas oportunidades surgirem.

Especialização não faz mal algum.

Comecei especializado em perfurar cartões de papel para escrever programas COBOL. Agora eu escrevo Python e não toquei em um cartão de papel perfurado há décadas.

A tecnologia vem e vai. Tudo o que você está se especializando agora desaparecerá em uma década e você estará se especializando em outra coisa. Ou você ficará obsoleto.

Preocupar-se com a "experiência em outros campos" é uma perda de tempo. Você terá essa experiência, quer queira ou não.

S.Lott
fonte
3

Depende da sua carreira. Acho que deve ajudar sua carreira se você deseja ser consultor geral, iniciar seu próprio negócio, trabalhar em uma pequena empresa ou em qualquer outra situação em que esse tipo de flexibilidade seja um ativo reconhecido. Estou na mesma situação e atualmente trabalho como consultor, embora esteja buscando especialização em .NET / C # / SQL / ASP.

Do mesmo modo, é possível fazer com que uma carreira se torne versátil com a tecnologia, possuindo uma ampla gama de experiência (embora superficial), mas sem se especializar em uma tecnologia específica?

Sim, acho que você pode procurar pequenas empresas que não podem contratar alguém para cada área de especialização ou ser consultor.

(Também não é uma má idéia escolher uma área na qual você se especializará, além de manter suas habilidades mais gerais.)

vjones
fonte
2

Ao contratar desenvolvedores, sou inclinado a pessoas com força e experiência nas habilidades específicas que estou procurando. Os recrutadores vão ampliar bastante esse viés. Isso significa que, mesmo que eu possa contratá-lo (e eu gosto de pessoas com habilidades amplas e bons conhecimentos básicos que podem aprender), é provável que nunca converse com você.

Eu mesmo, sempre fui um homem de pau duro e tive muitos cargos diferentes na mesma empresa em que trabalhei a maior parte da minha carreira. Ainda assim, eu meio que temo a perspectiva de ter que procurar emprego e não acho que conseguiria facilmente outro emprego com meu salário atual (o que é bastante satisfatório, mas as pessoas aqui me conhecem).

Jeremy
fonte
2

como sempre...

Depende

Depende do que você quer dizer com "carreira". Mais ao ponto, depende do que você pensa que quer dizer com "carreira".

Atualmente trabalho muito com aplicativos da web. Quando comecei essa carreira, a rede mundial de computadores não existia. Portanto, em grande medida, a resposta de @ Satanicpuppy está certa.

Há quatro vantagens que acompanham o território do Jack-of-All-Trades (JOT):

  1. A vontade e capacidade de aprender o que for necessário para fazer o trabalho
  2. A sabedoria de saber o que você não sabe
  3. Humildade para dizer isso e pedir ajuda quando necessário.
  4. Um grande saco de truques em vários limites de domínio

A principal desvantagem é: leva muito, muito mais tempo para se destacar , porque você está empurrando a curva de aprendizado em várias frentes.

Sou um DBA tão bom quanto alguns amigos que não fazem nada além de 15 anos? Claro que não. Posso ver soluções em um instante que eles nunca imaginam em duas semanas? Sim.

O melhor conselho, eu acho, é continuar JOT até encontrar algo tão fascinante, tão convincente que você queira fazê-lo e somente até o fim dos tempos. Que "isso" será sua especialidade.

Gosto de resolver problemas novos e difíceis, buscando inovações para acabar com o mundano e aprendendo continuamente - esse é o meu "ele" e é a razão pela qual eu amo TI

Ser generalista é a minha carreira.

Steven A. Lowe
fonte
+1: Ser generalista também é minha carreira. :-) Saber outras coisas além do domínio do problema ou da tecnologia principal é útil porque permitirá que você tenha uma caixa de ferramentas com possíveis soluções . Pode não fazer de você um super especialista, mas você poderá mexer com brinquedos novos - quero dizer, tecnologia.
Spoike
2

Penso que uma das razões pelas quais as empresas procuram e valorizam mais as pessoas especializadas remonta a abstrações com vazamentos . O problema é que, nos últimos 30 anos, os engenheiros de software aumentaram exponencialmente o número de camadas de abstração e, tanto quanto gostaríamos de garantir que não houvesse efeitos colaterais, eles sempre apareciam. E são as idiossincrasias não documentadas que tendem a pegar você.

Talvez você consiga começar a usar a nova tecnologia rapidamente lendo especificações e exemplos on-line, mas alguma vez notou que, quando inicia algo novo, gasta 20% do seu tempo escrevendo código para um recurso e 80% do seu tempo caçando o bug mais estranho você já viu? À medida que você se torna um especialista em uma área, essa proporção muda de 20/80 para 95/5 (estou inventando números, mas em geral eles provavelmente são próximos) especificamente nessa área. O que significa que você pode entregar o trabalho muito mais rapidamente e evitar armadilhas / bugs comuns antes que eles aconteçam. Por exemplo, hoje mais cedo, um de nossos engenheiros seniores (novo na equipe / produto) passou mais de meio dia procurando um problema com corrupção de pilha que levou cinco minutos para ser identificado, porque esse era meu território doméstico.

À medida que você se tornar um especialista em seu campo, ficará mais visível e valioso para o gerenciamento. Não conheço outras empresas, mas naquelas em que trabalhei, sua remuneração (pelo menos em parte) depende da importância de suas responsabilidades. JOAT geralmente não tem responsabilidades permanentes. Em vez disso, os gerentes os usam como recursos móveis / intercambiáveis ​​(o nosso vice-presidente chama-se canivetes suíços) que podem ser movidos de uma equipe para outra com base na demanda. Assim, você pode permanecer na empresa por 10 anos, depois olhar para trás e perceber que nunca ganhou uma única responsabilidade. Eu tenho um amigo muito bom (que também é um excelente desenvolvedor de C ++ / C #, mas também é um JOAT muito bom, porque ele aceita qualquer trabalho) que foi tipificado nesse papel. Eu sei que ele não está feliz porque, enquanto eu tenho um pedaço muito considerável e divertido do produto como playground, ele é principalmente um convidado temporário na terra de outra pessoa. Mas agora ele não pode sair disso.

Dito isto, ter as habilidades do JOAT é igualmente importante, portanto, embora eu não tente necessariamente me posicionar como JOAT, acho que é importante continuar lendo / estudando / aprendendo coisas novas, porque a tecnologia muda e mesmo se você como um especialista hoje, talvez seja necessário se tornar um especialista em algo completamente diferente amanhã.

DXM
fonte
O caso do seu amigo é exatamente o que estou passando agora! +1
Html Tosin
1

Eu diria absolutamente.

Mas você terá que sair e conseguir, não será exibido em um jornal ou anúncio de emprego on-line (a probabilidade é pequena). Portanto, em vez de procurar empregos especializados, talvez você deva procurar empregos que correspondam à sua variedade de forças. "Marginalmente bem" é subjetivo, talvez você esteja sendo muito duro consigo mesmo, modesto também, mas isso é uma coisa boa (-:

Além disso, embora suas experiências e conhecimentos sejam importantes, os empregadores estão mais interessados ​​em sua capacidade de gerar resultados. Pergunte a si mesmo: O que posso fazer com minha variedade de conhecimentos e experiências que melhoram os resultados desta empresa ? Sem ver seu currículo, alguns títulos que eu posso pensar são Engenheiro de Soluções, Arquiteto (Rede, Aplicativo, etc) ou até mesmo um CTO.

Por fim, meu conselho é fazer uma carreira do que você gosta. Você terá que fazer isso por mais de 8 horas por dia, durante muitos anos, e poderá gostar do que está fazendo nesse ritmo (-;

HTH, e muitas felicidades,

KM

KM.
fonte
1

É verdade que a maioria das ofertas de emprego está jogando contra eles por serem muito específicas ou muito exigentes. Eles são escritos como anúncios (provavelmente para mostrar a outros quão poderosos eles são), mas evita a aplicação de alguns perfis excelentes por causa dos motivos declarados na sua pergunta.

Aqui está o anúncio de emprego que eu uso:

Descrição da Função e Pessoa

Pelo menos 4 anos de experiência com o .NET Framework. O conhecimento de tecnologias específicas não é necessário. Os candidatos devem ser aprendizes rápidos e ser capazes de demonstrar entusiasmo em aprender coisas novas. Queremos pessoas que:

  • está interessado em mídia digital
  • veja as dificuldades como oportunidades
  • fazer as coisas e não são orientadas por CV são
  • interessado no lado comercial de
  • seu trabalho tem o espírito de inicialização Idioma: francês ou inglês

Habilidades (não necessárias, mas cada uma será um ativo):

  • .NET Framework 4.0
  • Estrutura nHibernate ou Entity
  • Componentes do DevExpress
  • LINQ
  • WCF
  • HTML / CSS / Javascript
  • ExtJs

Como você vê, exceto a experiência geral com o .NET, nenhum outro conhecimento é realmente necessário. No entanto, o que é necessário é a capacidade de inclinar coisas novas.

Como você não pode controlar como as empresas escrevem suas descrições de cargo, você deve vê-las como oportunidades de aprendizado.

Quando vejo um anúncio de trabalho muito exigente, vejo isso como uma oportunidade para aprender coisas novas. Durante a entrevista (se eu conseguir), explico que, como minha motivação é aprender e fazer as coisas, não ficaria muito afetado pela falta de experiência em uma das tecnologias listadas.

De fato, foi assim que aprendi tão rápido: escolhendo trabalhos exigentes .


fonte