Conselho de carreira: fique com o PHP ou comece uma nova carreira em outra coisa (.Net?) [Fechado]

34

Estou planejando me mudar para NY em 6 a 12 meses no máximo, então sou forçado a encontrar um novo emprego. Quando planejo começar minha vida em outra cidade, provavelmente também é um bom momento para pensar em mudanças de carreira.

Eu encontrei muitas opiniões diferentes sobre PHP vs .Net vs Java e este não é o tópico aqui. Não quero começar uma nova briga sobre qual idioma é melhor. Conhecer uma linguagem de programação não é a coisa mais importante para ser um desenvolvedor de software. Para ser um desenvolvedor realmente bom, você precisa conhecer OOP, padrões de design, testes ... e uma linguagem é apenas uma ferramenta para fazer as coisas acontecerem.

Então, de volta à minha pergunta. Tenho experiência mista em TI - 1 ano como suporte técnico (administração e suporte do Windows), cerca de 2 anos de experiência em programação embarcada (VB.Net 2005) e nos últimos 2 anos estou trabalhando com PHP / MySQL. Trabalhei com a loja virtual Magento, auxiliei em alguns projetos no Symfony, modifiquei alguns sites do Drupal.

Minhas principais preocupações são as seguintes:

  1. Continuo aprimorando minhas habilidades em PHP, por exemplo, para começar a aprender algumas das principais estruturas PHP, como o Zend, o Symfony talvez obtenha alguma certificação em PHP.
  2. Ou começo a aprender .NET ou Java. Eu sou mais familiarizado com o .NET, então provavelmente o escolherei se escolher entre .NET e Java (ou você pode me convencer a escolher Java :).

Em termos de carreira, não sei qual é a melhor escolha. Aprender uma nova estrutura e linguagem consome mais tempo do que melhorar minhas habilidades existentes em PHP. Mas, com o .NET, você tem muitas possibilidades (desenvolvimento do Windows 7 Phone, Silverlight, WPF) e chances maiores de encontrar empregos melhores.

Os trabalhos PHP são menos bem pagos que o .NET, pelo menos, de acordo com minha pesquisa (corrija-me se estiver errado). Mas se eu começar agora com o .NET, sou apenas iniciante e meu salário será baixo. Preciso de pelo menos mais de 2 anos de experiência em algum idioma para tentar encontrar algum emprego que pague mais de US $ 50-60 mil em NY. Meu principal objetivo nos próximos 2-3 anos é tentar encontrar um emprego na categoria $ 60-80k. Não me interpretem mal, não estou apenas perseguindo dinheiro, mas o dinheiro é um fator importante quando você está tentando iniciar uma família.

Tenho 27 anos e sinto que não há muito espaço para decisões erradas em relação à minha carreira, portanto, qualquer conselho será muito bem-vindo.

Atualizar

Obrigado a todos por gastar tempo para me ajudar com o meu problema. Todas as respostas e comentários foram muito úteis. Eu decidi ficar com o PHP, mas também aprender C # e Silverlight 4. Vamos ver aonde a vida me levará.

Christian P
fonte
Aprenda os dois. Inicie um projeto em cada um. não leva tanto tempo.
systemovich 14/01
Experimente o Code Igniter. É super fácil de aprender e bem documentado.
B Sete
2
Não há mal nenhum em aprender 2-3 idiomas.
Rudy
Uma vez que isso foi ultrapassado por alguém, tenho que perguntar: VB.NET incorporado? ..
Simon Whitehead
@SimonWhitehead não está exatamente incorporado, mas não consegui encontrar uma palavra melhor para explicá-la. Era um aplicativo escrito no VB.NET para um hardware industrial (feito por meus colegas de trabalho e por mim) que estava se comunicando com dois DACs (cartões de aquisição de dados).
Christian P

Respostas:

64

Tenho 51 anos e utilizei pelo menos 15 idiomas e / ou frameworks desde que recebi meu primeiro show pago após a graduação em 1987.

Te abençoe.

Eu nunca entrei na gerência porque não queria, mas sei como programar e como manter as equipes motivadas e fornecendo um bom código. Você precisa trabalhar nas habilidades das pessoas e procurar um trabalho interessante que o estique. Eu nunca parei de aprender ou me divertir, mas houve momentos em que eu estava na estrada que poderia ter parado - mas não codificando, viajando.

Contanto que você possa ganhar a vida e cumprir seus compromissos pessoais sem comprometer seus princípios, desde que goste do que faz (um luxo que a geração de meus pais não teve) apenas continue seguindo em frente.

.Net e Java são geralmente corporativos (porque são caros para fazer coisas úteis, mas escalam muito bem), o PHP geralmente é uma startup, eu faço Ruby (geralmente startups que saíram dos estúdios de design por algum motivo) para muitas pessoas como independente. Se você se apegar ao PHP, aprenda o que é o OO, porque acho que finalmente começará a ser o modo como as pessoas fazem as coisas, mesmo que seja uma reimplementação um pouco melhor do que você tem com Java e elas poderiam torná-lo muito mais dinâmico. Pessoas que fazem Python e querem viajar podem acabar fazendo todo tipo de coisas científicas e de jogos interessantes em todo o mundo. Perl ainda é um corredor também e tem um perfil semelhante.

Esqueça o idioma, escolha a indústria que você gosta, escolha uma empresa gerenciada por seres humanos e divirta-se entregando valor às pessoas que a apreciam. Você não vai se arrepender.

Francis Fish
fonte
9
PHP é muito fraco em OO. Começou como uma linguagem de modelo e mostra.
Keyo
5
@Keyou, não significa que você não deve empurrar o uso de recursos php OO que leva a linguagem a um outro nível :)
jonathan
@Keyo Quem disse que o PHP é fraco em OO para sua informação PHP OO agora está muito perto de Java Ver PHP5.5 e continua melhorando
Hmmm
120

O que diabos a escolha da linguagem de programação tem a ver com sua carreira?

Essa pergunta é como perguntar: "Eu tenho duas opções para um local de trabalho. Devo trabalhar no local em que o chefe tem sotaque norueguês ou no local em que o chefe tem sotaque espanhol?"

Existem considerações de carreira muito mais importantes.

  1. Empresa iniciada ou estabelecida?
  2. Empresa do produto ou empresa em que a TI é uma função de suporte?
  3. Você aprenderá coisas novas ou reformulará as antigas?
  4. 9 a 5 ou "trabalha a qualquer hora que você quiser?"
  5. Colegas de trabalho agradáveis ​​ou colegas de trabalho malvados?
  6. Colegas de trabalho inteligentes ou colegas de trabalho estúpidos?
  7. Terno e gravata ou camiseta?

Essa lista pode durar horas. A escolha de uma linguagem de programação é tão relevante para a carreira de um programador quanto a escolha de pentear o cabelo para a esquerda ou para a direita. É todo o desenvolvimento de software, não importa qual idioma da linguagem de programação você esteja falando.

Joel Spolsky
fonte
19
Você tem um ponto. Mas o tipo de linguagem de programação está, na maioria dos casos, intimamente ligado ao perfil da empresa. No meu entendimento, o PHP é usado principalmente em empresas iniciantes e grandes empresas estabelecidas usam .NET para seu desenvolvimento.
Christian P
29
a resposta real: gaste alguns meses ganhando uma reputação de Stack Overflow de cinco dígitos e você receberá ofertas de trabalho na faixa de US $ 100 mil + sem uma entrevista.
Joel Spolsky
37
@Joel: por mais que eu goste do StackOverflow (e a poucas semanas de alcançar uma reputação de cinco dígitos apenas por diversão), se eu receber uma oferta de emprego de 100 mil por isso, comprarei uma cerveja para você :-)
Diego Mijelshon
25
Para algumas pessoas, o idioma tem tudo a ver com sua carreira. Adoraria trabalhar para muitas grandes empresas, mas não à custa de escrever um idioma que me frustrasse / reduzisse a produtividade. Não estou dizendo que estou feliz em escrever um idioma, mas definitivamente existem idiomas que eu não gostaria de codificar em período integral, e seria estúpido aceitar um emprego, por exemplo, com a escrita flexível. Objetivo- C em um trabalho 9-5 escrevendo C #. Você não pode compartilhar essa opinião, tudo bem. Mas não assuma que programadores são idiotas. Sua lista de considerações importantes é sua .
Danny Tuppeny
39
@Joel. Posso ter um emprego de 100 mil? Eu tenho um representante de 5 dígitos e atualmente estou desempregado.
precisa saber é o seguinte
23

Aprenda o maior número possível de idiomas, de preferência pelo menos um em cada área principal de desenvolvimento.

  • Linguagens de programação com script (você já possui PHP, tente Ruby, Python ou outra coisa)
  • Compilado em linguagens de máquina virtual com estruturas avançadas: .Net, Mono, Java
  • Compilado para bare-metal: C / C ++
  • Linguagens funcionais: Lisp, F #, Haskell

Cada um destes ensinará algo sobre os fundamentos do desenvolvimento de software. Obviamente, além disso, você precisará experimentar diferentes abordagens de design (OO, funcionais, baseadas em dados), diferentes métodos de trabalho em equipe (ágil, tdd, em comparação com tipos mais rígidos), diferentes plataformas, diferentes mecanismos de implantação (nativos , baseado em framework, web). A lista continua. A fluência linguística é apenas uma pequena parte do todo.

Para todas essas coisas, você precisa fabricar pelo menos um produto real para usá-lo.

Algumas pessoas dirão que você precisa se especializar em uma tecnologia (PHP, .Net, Java) e construir uma carreira amplamente em torno dessa para progredir. Eu não concordo com isso. Vou levar um desenvolvedor que já esteve ao redor do quarteirão algumas vezes com diferentes plataformas e tecnologias em um que passou 10 anos fazendo uma coisa em qualquer dia da semana. O motivo é que a tecnologia muda a cada ano, e o desenvolvedor que é capaz de adquirir uma nova tecnologia, ler a API e aplicar sua experiência de maneiras mais gerais do que apenas saber que a biblioteca funciona de cor, será muito mais produtivo no longo prazo. Ok, para que o veterano de 10 anos do .Net saia do ponto de partida do .Net mais rápido, mas esse lead inicial se perde em cerca de um mês. Isto'

Steve Streeting
fonte
3
Eu também acrescentaria à sua lista linguagens lógicas (Prolog), linguagens matemáticas (que são um subconjunto de regras funcionais) (Mathematica, R), linguagens de prefixo / postfix (PS, Forth), montador e baseado em hardware (para FPGAs e similares).
Orbling
8
Eu concordo ... é divertido aprender novos idiomas. Mas quando você está tentando melhorar seu conhecimento geral sobre desenvolvimento de software enquanto aprende uma nova estrutura PHP e uma linguagem adicional (C #) que deseja usar no futuro, aprender novas linguagens por diversão não é uma opção ou, pelo menos, uma opção sem grandes sacrifícios em outras partes da sua vida.
Christian P
4
Eu concordo Christian, esta resposta é um pouco extremada. Mas talvez a resposta desta resposta não deva ser: "Aprenda um bajilhão de novos idiomas agora ou você pode simplesmente dar um beijo de despedida nos seus sonhos". Deveria ser: "Sim, você deve tentar conseguir um emprego em um idioma que não esteja familiarizado, porque esse é um investimento de carreira melhor a longo prazo". Além disso, é a melhor maneira de realmente se tornar proficiente em um idioma.
precisa saber é o seguinte
1
@Orbling: Você está certo, a lista não estava completa, eu só peguei os principais 'carreira' para evitar que se torne demasiado assustadora uma lista;)
Steve Streeting
3
Quanto ao extremo - eu não estava sugerindo que você aprendesse todas essas línguas em um ano :) Como a pergunta estava no contexto de uma carreira, não acho que isso seja irreal. Todos nós temos que assumir a responsabilidade pelo nosso próprio desenvolvimento profissional e, mesmo que você faça um projeto de hobby em um ano usando uma tecnologia que você nunca usou antes, isso ajudará bastante. O código aberto também é uma ótima maneira de fazer isso, porque significa que você pode se envolver em um projeto real sem começar do zero e obter ajuda de colegas da comunidade.
22810 Steve Streeting
7

Eu sugeriria procurar um emprego em PHP, porque é isso que você faz melhor.

Sugiro também que você comece a se educar nas novas tecnologias que deseja aprender, para poder começar a procurar emprego com essas ferramentas, mas não faça isso em um prazo tão curto, porque descobrirá que essas coisas são enormes e os empregadores esperam você conhece o suficiente desses gigantes para ser produtivo. Isso requer tempo e prática . Não subestime a quantidade de tempo e a quantidade de prática que você terá que fazer.

Para lhe dar uma estimativa do que "eu posso programar em Java" potencial empregado deve ser capaz de, você pode ter um olhar para o Sun Java Tutorial . Eu esperaria que você estivesse familiarizado com pelo menos metade dos conceitos listados, onde familiar significa poder usá-lo em um programa escrito por você e usá-lo corretamente . Eu esperaria que demorasse mais de 6 meses estudando para atingir esse nível.


fonte
7
6 meses? mesmo? O tipo de programador contratado aprende o idioma e a plataforma na primeira semana de trabalho, e é por isso que NUNCA me importo com o idioma que alguém conhece quando se candidata a um emprego na Stack Overflow ou Fog Creek.
Joel Spolsky
4
@ Joel, observe que estou falando de pegar coisas no seu tempo livre . Sozinho, sem um mentor por perto. Pode não ser uma maneira tão eficiente de aprender coisas novas como estar fisicamente em seus escritórios com você e seus funcionários por perto ... Talvez você queira contratar christian.p para provar que estou errado?
3
@ Joel Quando seu aplicativo é escrito em seu próprio idioma personalizado, você não tem muita escolha, hein! ;-)
Darrel Miller
3
@Orbling. Isso não é um pouco fácil para eles? Por que não algo como "por favor, encontre e corrija o erro neste código de produção do BrainF * ck! Eu e meus cinco colegas vamos assistir você e ver quanto tempo você demora"?
5
@ Joel - Eu suspeito que, quando Christian estiver procurando um novo emprego em uma nova cidade, ele descobrirá que nem todos os empregadores são tão independentes do idioma quanto você em Stack Overflow / Fog Creek. Na verdade, eu arriscaria um palpite de que, longe de não se importar com os idiomas que ele conhece, 95% + lançará seu currículo na lixeira instantaneamente se não corresponder às palavras-chave do idioma correto.
precisa saber é o seguinte
6

Detesto parecer um troll, mas o idioma que você deve aprender é o inglês. Há muitos erros em sua postagem e isso parece desleixado. Se eu estivesse contratando e esse fosse o seu currículo, eu não me importaria com as linguagens de programação que você disse que conhecia, eu assumiria que sua negligência com a língua inglesa seria transferida para o seu trabalho de programação.

Não parecia que você estava estudando inglês como segunda língua (é claro que eu poderia estar errado), mas havia erros gramaticais e ortográficos suficientes para fazer uma pausa na maioria dos gerentes de contratação. Como eles só verão sua palavra escrita no início, é necessário corrigi-la.

Doug Johnson-Cookloose
fonte
6
Está fora de tópico, mas obrigado pelo aviso. De fato, o inglês é minha segunda língua. Acredite ou não (ou talvez seja óbvio para você), mas eu aprendi a falar / falar inglês sozinho (sem cursos de idiomas).
Christian P
3
Uma vez que é o seu segundo idioma, você está indo bem. Obviamente, alguém deve verificar seu currículo apenas para ter certeza, mas sei que se eu tivesse que fazer meus comentários em francês, digamos, não seria tão lúcido e bem formulado quanto o seu em inglês. Não estava sendo sarcástico, apenas tentando ser útil. Há muitos americanos que não se incomodam com a ortografia e gramática e isso os prejudica no mercado.
precisa saber é o seguinte
1
Sei que meu inglês precisa de melhorias e estou fazendo o possível para melhorá-lo. Mas sou grato por seus comentários, porque sei que quando estou me candidatando a um emprego é a impressão geral que importa. Portanto, se minha escrita for desleixada, prejudicará minhas chances gerais de conseguir um emprego.
Christian P
1
Era uma vez, se você se candidatasse a um emprego através de um recrutador, eles levariam algum tempo para aperfeiçoar seu currículo e garantir que a ortografia, a gramática e o estilo geral estivessem corretos. Mas recentemente entrevistei alguns candidatos, e parece que os recrutadores não se incomodam mais, apenas colocam seu logotipo no canto superior direito e enviam o currículo. Por isso, recomendo que um amigo de sua confiança revise seu currículo e cartas / e-mails de inscrição.
precisa saber é o seguinte
1
@ Carson63000 Minha experiência de contratação por meio de recrutadores é que, quando tentam 'ajudar', geralmente fazem uma bagunça completa nos currículos dos candidatos. Como resultado, tive que dar aos candidatos com currículos desleixados o benefício da dúvida. Dada a escolha, eu teria cortado completamente os recrutadores idiotas da equação.
Daniel Cassidy
5

A resposta a longo prazo para essa pergunta é basicamente o que nosso estimado anfitrião (Joel Spolsky) e Steve Streeting disseram. A programação básica não é sobre linguagens, é sobre o uso do computador para resolver problemas e é uma arte que deve ser aprendida, trabalhada e pensada ao longo do tempo. Saber codificar não faz de um programador.

Mas você perguntou um tópico pragmático e sensível ao tempo. O que você deve fazer AGORA?

Eu sugiro que você pesquise PHP até a mudança. Mergulhe, duro, muito duro, 20 horas por semana fora do trabalho duro. Com o PHP, é muito fácil .. obter uma conta de hospedagem e um domínio e começar a criar aplicativos. Com esforço concentrado, 6 meses é uma eternidade. Durante esse tempo, torne-se realmente bom nisso. Isso o ajudará a encontrar um bom emprego uma vez em Nova York e provavelmente o tornará um programador melhor para iniciar.

Entre. Se você ainda não sabia, existe um site de emprego em TI na família StackExchange.

ENTÃO, quando a transição da vida se acalmar um pouco, comece a seguir o manual do Sr. Streeting e a se educar sobre o ofício da programação, em vez do comércio da codificação. Use algum tempo fora do trabalho para ler e fazer coisas em outras plataformas e com outras ferramentas.

tomjedrz
fonte
1

Penso que o ponto principal é que, eventualmente, um engenheiro de software deve chegar ao estado em que a linguagem é em grande parte irrelevante para a tarefa em questão, exceto em suas limitações.

Se você conhece um idioma ou não, isso não deve fazer diferença, desde que você tenha um manual, apenas para acelerar durante o primeiro dia ou mais enquanto você se orienta.

Dito isso, as linguagens proprietárias tendem a ter menos documentação e exemplos espalhados pela Web e, portanto, são mais difíceis de se acostumar e representar um problema se você deseja levar seu trabalho para casa.

Orbling
fonte
3
A linguagem raramente é difícil. Aprender o ecossistema e as melhores práticas a minha opinião bastante algum tempo ...
@ Thorbjørn É verdade que pode levar algum tempo para adquirir as melhores práticas em um idioma. Embora isso dependa muito de como você o aprende, alguns idiomas são muito mais difíceis do que outros para encontrar informações.
Orbling
1

Meu conselho é encontrar um emprego para fazer o que lhe interessa e gostar de fazer. Se você gosta de PHP, por que não continuar desenvolvendo suas habilidades em PHP. É muito mais fácil aprender e desenvolver habilidades fazendo algo que você está interessado.

Você já olhou para .NET ou Java antes? Caso contrário, isso pode sugerir que você não está interessado nesses idiomas, mas talvez você possa passar uma semana mais ou menos olhando cada um e ver por si mesmo se você está interessado.

cspolton
fonte
Estou familiarizado com o Silverlight 4 e C # (também tenho 2 anos no VB.NET 2005), esse é o principal motivo pelo qual estou pensando em mudar.
Christian P
1

Termo curto; Não sei quais são as práticas de contratação nos EUA, mas, considerando que você está se mudando dentro de 6 a 12 meses, por enquanto, eu consideraria o PHP uma vez que você tem dois anos de experiência.

Minha experiência aqui (na Holanda) é que as empresas tendem a ter um foco de curto prazo nas tecnologias e na experiência da estrutura. A linguagem realmente não é, mesmo que estejam perguntando " 3 anos de experiência em C # ", eles querem dizer " 3 anos de experiência com as bibliotecas / ferramentas de estrutura / classe que você usaria com C # ".

(Caso contrário, por que eles querem contratar alguém que precise de três anos para aprender os recursos de sintaxe e linguagem C # está além de mim. Parece alguém que eu não gostaria de contratar.)

Aprendendo novos idiomas; estático, dinâmico, funcional, é de grande valor quando se trata de ampliar suas perspectivas. No entanto, aprender as bibliotecas de classes relevantes e a maneira de fazer as coisas nesse idioma exigirá experiência.

Eu recomendaria tomar uma decisão escolhendo uma pilha de tecnologia e aprendendo profundamente. Use os outros ambientes para se inspirar.

É claro que a preferência pessoal também entra em jogo. Por exemplo, embora haja muito mercado para isso, eu nunca aceitaria um trabalho em PHP: -PI escolhe uma pilha e eu trabalho em busca disso.

Quanto a fazer uma carreira a longo prazo, acho que você deve olhar além da codificação (no final, tudo se resume a aprender e poder ler e / ou vasculhar a documentação) e a tecnologia do dia e analisar mais as habilidades pessoais e outras coisas. As tecnologias vêm e vão rapidamente. É claro que há muito a aprender quando se trata de boas práticas e conhecimentos mais gerais, infelizmente eles raramente são procurados no mercado de trabalho em minha experiência.

Joppe
fonte
1

Eu acho que muitas vezes as pessoas misturam linguagens de programação e estruturas / pilhas de tecnologia. É relativamente fácil aprender um novo idioma, mas é muito mais difícil com grandes tecnologias. Concordo com algumas respostas de que o mais importante é a sua experiência geral de programação / solução de problemas, mas não acredito que alguém possa ENTENDER uma tecnologia completamente nova em 1 semana.

Certamente, uma grande parte dos desenvolvedores nunca leu um único livro técnico e não entendeu os elementos básicos das tecnologias que estão usando. Eles apenas abrem caminho para sair dos problemas e são muito "bem-sucedidos". Eu mesmo comecei a carreira em PHP sem nem mesmo entender como o HTTP funciona no começo. Mas alguns empregadores, que eu respeito mais, esperam um profundo entendimento de "como as coisas funcionam", simplesmente porque isso tende a aumentar as chances de sucesso de seus projetos.

O mínimo que você precisa fazer para obter esse entendimento é ler alguns livros BOM com tempo suficiente para criar protótipos de soluções para problemas comuns em um novo ambiente de desenvolvimento desconhecido. É possível fazer em uma semana? Eu adoraria trabalhar com pessoas capazes disso, mas não espero vê-las tão cedo.

Alguns empregadores estão realmente prontos para lhe dar tempo suficiente para obter esse entendimento, respeitando sua profunda experiência técnica geral em outras pilhas de tecnologia (se você tiver uma), mas infelizmente a maioria não é.

Além disso, quando você está mudando de tecnologia, o mais importante é sua personalidade - como você é humilde e curiosa para dedicar tempo suficiente para entender como as coisas funcionam e como são feitas em sua nova área.

Então, para resumir, minha resposta seria a seguinte. Escolha uma tecnologia com potencial suficiente e que (o mais importante) o faça feliz em seu trabalho. Especializado nessa tecnologia, o mercado de trabalho valorizará isso e alguns anos necessários para obter seu salário-alvo valerão a pena. Mas nunca seja excessivamente zeloso, passe algum tempo com outras tecnologias, isso fará de você um PROFISSIONAL muito melhor em geral.

Konstantin
fonte
1

Eu tenho que concordar com Joel. Mas sua resposta vai além das habilidades e preferências técnicas.

Na minha experiência, geralmente os requisitos de seu trabalho apontam para uma tecnologia ou linguagem de programação específica, e não o que você gostaria de usar; a menos que seja uma startup que ainda não tenha definido o que eles usarão. E ninguém pode garantir que você encontre um emprego / empresa utilizando exatamente o que está procurando.

Portanto, a verdadeira questão é: você é bom em aprender coisas novas? você pode resolver um problema e resolvê-lo em tempo hábil, independentemente da linguagem de programação?

Um bom programador deve estar bem ciente dos conceitos de construção e engenharia de software. Sua pergunta me faz acreditar que você não investiu tempo suficiente para aprendê-las, o que provavelmente o deixa incerto sobre suas habilidades e quais são seus potenciais reais. E honestamente, se você não tiver feito isso, já está na hora de fazê-lo, porque sem eles você provavelmente não irá longe.

Há outra coisa que a maioria de nós, programadores, costumam não prestar atenção antes de completar 30 anos: habilidades de programação são apenas metade das habilidades que tornam um bom programador. Você é um bom jogador de equipe? Você está disposto a passar o conhecimento aos colegas de trabalho tão voluntariamente quanto você (ou deveria estar) recebendo conhecimento de outras pessoas? As habilidades das pessoas são muito subestimadas por muitos de nós, embora sejam realmente muito importantes.

mspir
fonte
1

Não concordo com a maioria dos comentários listados neste fórum.

Além de aprender os princípios e a teoria de engenharia de software, o idioma que você escolhe dominar é uma opção de carreira. É por isso que existem programadores Java e PHP. Os programadores PHP provavelmente não estarão trabalhando para a NASA e os programadores Java provavelmente não estarão trabalhando para uma loja virtual.

Se você quer um emprego na América corporativa, é melhor seguir o Java / .Net. Você pode obter uma boa renda, mas esteja preparado para doar sua vida a eles (tempo).

Se você quer ser um freelancer independente e viver na via rápida com a tecnologia da web, é melhor usar o PHP. Muito trabalho aqui, mas o salário varia muito e ser independente é trabalhar com todos os Tom, Dick e Harry com uma idéia de tentar contratá-lo por centavos.

Há alguma sobreposição com PHP e Java, mas apenas é visto em trabalhos corporativos (Serviços Java REST com front-end PHP), mas você não encontrará lojas da web ou trabalho freelance independente em qualquer lugar perto de Java.

Ambos exigem muito tempo e dedicação, se você quiser ser útil em qualquer situação.

Para ser um desenvolvedor PHP competente e procurado, você precisa de um pacote cheio de conjuntos de habilidades. Provavelmente, você deve conhecer CSS, HTML4 / 5 e, definitivamente, Javascript DOM / Ajax / Jquery, além de pelo menos uma estrutura viável, como Zend (escolha do provador da América corporativa), Codeignitor, cakePHP, etc. Você precisará conhecer os "três grandes" CMS's: Drupal, Wordpress e Magento. Coloque esses conjuntos de habilidades em seu currículo e você será um especialista em PHP com a capacidade de realizar trabalhos onde quer que vá. Como você pode ver, entender tudo isso é uma devoção a um idioma e suas ferramentas, porque aprender Perl não ajudará você a ser um desenvolvedor especialista em Drupal ou Zend.

O mesmo vale para Java: OOP, J2EE, REST / SOAP, Spring / Struts, etc. e é uma frota de outras ferramentas que levam anos para serem mestres.

Alguém aqui tentou codificar Java por um ano e depois voltou ao PHP (ou qualquer linguagem de script). É difícil. Parece estranho.

Eu trabalho para uma empresa da Fortune 500 e os desenvolvedores de Java não seriam capazes de fazer o que os desenvolvedores de PHP fazem e os desenvolvedores de PHP não seriam capazes de fazer o que os desenvolvedores de Java fazem. Mas ambos se saem bem financeiramente porque são especialistas em seu campo, na linguagem de sua escolha e no fluxo de ferramentas que o acompanham.

coder3
fonte
0

Linguagem e plataforma não são tão importantes. Aprenda pessoas sólidas e habilidades de ficção científica. Muitas pessoas disseram isso, mas não deram detalhes, então deixe-me fazer isso. Aqui estão algumas coisas para aprender

  • algoritmos e estruturas de dados.
  • simultaneidade
  • aprendizado de máquina
  • programação em nível de sistemas
  • recuperação de informações e mecanismos de pesquisa
jshen
fonte