Questão:
Eu realmente preciso saber MUITO?
Colt84
2018-02-27 09:01:15 UTC
view on stackexchange narkive permalink

Eu aprendi HTML, CSS, JQuery e algum Javascript até agora. Quando eu estava entrando no desenvolvimento web, um amigo meu que trabalha como desenvolvedor há alguns anos me disse que se eu aprender as linguagens de programação mencionadas acima, poderia facilmente conseguir um emprego.

No entanto, todos os trabalhos que enfrentei até agora requerem SASS e LESS, estruturas ou bibliotecas Javascript (Angular, React, Node, JSON etc) ou Wordpress ou PHP e SQL e muitas outras linguagens / frameworks.

Não estou perguntando o que aprender exatamente, porque sei que essas perguntas são difíceis de responder. Minha pergunta é: é possível encontrar emprego com os idiomas que conheço até agora? Ou eu realmente preciso saber 15.000 linguagens, frameworks, bibliotecas e quais não?

Eu estava planejando aprender PHP e SQL em algum lugar no futuro, mas com base no que vi, até isso será insuficiente.

Como desenvolvedor, você sempre terá que manter suas ferramentas afiadas e ficar de olho nas novas ferramentas para adicionar ao seu baú de ferramentas.Acho que você está distorcendo um pouco sua preocupação.Você mencionou apenas uma tecnologia que se classifica como uma linguagem de programação (... e uma linguagem interpretada) e você fala sobre "15k" coisas.Tente aprender um segundo idioma e depois se preocupe com 5. No clima de hoje, saber React ou Angular aumentará seu leque de oportunidades.Sim, você precisa saber "muito".Mas se você aprender com os primeiros princípios, aprender uma nova sintaxe será muito fácil.
Em meu trabalho anterior sozinho, usei 6 linguagens de programação diferentes (Python, Java, JavaScript, PHP, Ruby, SQL) e 11 frameworks (Flask, Jersey, Polymer, LESS, Jinja, Angular, jQuery, React, Laravel, CodeIgnite, SQLAlchemy)E essa era uma função de desenvolvedor web.
Você precisa ** aprender ainda mais ** do que isso (e por décadas).Leia http://norvig.com/21-days.html que contém uma visão muito útil.E os conceitos e a experiência são mais importantes do que o conhecimento superficial.Eu também recomendo contribuir ativamente para algum projeto de [software livre] (https://en.wikipedia.org/wiki/Free_software).BTW, leia [SICP] (https://mitpress.mit.edu/sicp/), use alguns [distribuição linux] (https://en.wikipedia.org/wiki/Linux_distribution) uma vez que são muito amigáveis ao desenvolvedor efeito de software livre.
"É possível encontrar trabalho com os idiomas que conheço até agora?"Isso depende de muitos outros fatores do que apenas seus idiomas conhecidos.Duvido que alguém possa responder por você.
Dos que você mencionou, apenas JavaScript pode realmente ser considerado uma linguagem de programação.Sass e Less.js são mais parecidos com ferramentas de produtividade.Se você faz desenvolvimento para a Web, deve saber pelo menos os fundamentos de como usá-los para tornar seu trabalho mais eficiente.Da mesma forma, os programadores devem aprender a usar outras ferramentas como ferramentas de controle de versão, linters, testadores, refatoradores de código, ferramentas de construção, etc. para tornar seus trabalhos mais produtivos.Isso não significa que você precisa conhecer todos eles;por exemplo, se você conhece uma ferramenta de controle de versão, aprender outra não é difícil.
Tenho certeza de que isso precisa de uma etiqueta de localização.A maioria das respostas aqui me deixou confuso, porque não consigo pensar em uma única função de desenvolvedor em minha área em que o conhecimento atual do OP seja qualificado como júnior.Estou em uma indústria diferente, embora ...
Quando você é um desenvolvedor de software, o dia em que para de aprender novas tecnologias é o dia de sua aposentadoria.
Bem-vindo à era da economia baseada no conhecimento.Quanto mais conhecimento você obtém, mais valor você tem.E enquanto outros comentaristas insistiram justamente no conhecimento técnico, eu diria que o conhecimento funcional também é importante para sua carreira (qualquer que seja o domínio em que você esteja trabalhando, estou fazendo software hospitalar e estou sempre aprendendo coisas novas sobre contabilidade hospitalar oupedidos de drogas - eu tenho que).
Certa vez, um recrutador me disse que você tem conhecimento especializado ou avançado sobre um tópico.Meu palpite é que com um pouco de tempo aprendendo (digamos, alguns meses), você pode aumentar um pouco o número de tópicos com conhecimento avançado.Estude as descrições de cargos, pergunte aos especialistas e obtenha as habilidades de que precisa.
Você definitivamente não precisa saber PHP, é a piada do mundo da programação e focar sua carreira nisso é um grande erro.
@ayrtonclark tudo o que pensamos nós, programadores de PHP, o mercado pode não se importar :)
Quando você diz "topou", isso significa que o anúncio de emprego diz que exige todas essas coisas ou você se inscreveu e eles o rejeitaram porque você não tinha essas coisas?Considere que os anúncios de empregos os colocam de forma que seus anúncios apareçam quando alguém pesquisar "SQL", mesmo que o emprego não envolva bancos de dados.Se você não está se candidatando a empregos porque há coisas que você não conhece, a primeira coisa a fazer é começar a se candidatar de qualquer maneira.Não te custa nada.
Cinco respostas:
Edgar
2018-02-27 09:11:36 UTC
view on stackexchange narkive permalink

Acho que um grande problema aqui é o que significa "você conhece" o idioma. Ou seja, se você estudou um livro sobre a sintaxe da linguagem, pode afirmar que a conhece . Mas você o conhece em teoria ou sabe como usá-lo de forma eficiente. E quanta experiência você tem em usá-lo com eficiência?

Muitas pessoas (não dirigidas a você) afirmam que sabem uma língua, mas na realidade sabem apenas um pouco sobre ela. Talvez para certos trabalhos que pouco seja bom o suficiente, depende.

Eu sugiro que você consiga um emprego com um projeto real o mais rápido possível e aprenda no trabalho . Há muito mais do que apenas "conhecer a língua". Parece que você sabe o suficiente para começar a trabalhar. Faça isso e continue aprendendo todas as coisas novas que você precisa saber - e nunca pare de aprender.

Olá Edgar, corrija-me se estiver errado, mas o OP não está sendo contratado no momento.Então, pedir a ele para "conseguir um emprego com um projeto real" não responde à pergunta, você não acha?Por outro lado, contribuir para projetos de código aberto de renome também se qualificaria como experiência relevante para você?
@ValarMorghulis: Ele escreve "Minha pergunta é, é possível encontrar um emprego com os idiomas que conheço até agora?"isso soa muito para mim como se ele quisesse ser contratado.Na minha opinião, e não sou uma fonte confiável, o código-fonte aberto conta como experiência.Mas também sei que é uma experiência diferente de um projeto comercial.Qualquer experiência é boa, a experiência da vida real é melhor, e diferentes tipos de experiência são perfeitos.
<< aprender no trabalho. >> isso é 100% verdade, mas agora explique para um empregador que eles querem, alguém que magicamente possa começar a desenvolver 100% a partir do primeiro dia.
@kifli: Um empregador inteligente sabe disso.E você não quer trabalhar para um empregador estúpido.Mas um funcionário inteligente também deve entender que um iniciante que tem que aprender muito (independente da linguagem de programação) receberá menos do que alguém que já tem experiência.
A programação de hoje chegou a "jack of all, master of none".Antigamente, idiomas específicos lhe davam um emprego e o mantinham até a aposentadoria.Bons exemplos são COBOL ou Fortan ou mesmo assembly e C durante os anos 80 e 90.Agora você precisa saber muito mais do que antes, mas é rápido partir daí.Portanto, conhecer os conceitos é melhor do que estar muito preso a qualquer coisa.
@Dan: Não acho que exista algo como "Programação de hoje".Dependerá muito do tipo de trabalho que você fizer.Ou sejamanter e alterar o software personalizado existente em uma empresa.Ou desenvolvendo os mais novos aplicativos da web.Nem todos os trabalhos são de ponta.
Yuropoor
2018-02-27 16:03:37 UTC
view on stackexchange narkive permalink

O que eu acho que você entendeu mal é conhecimento prático versus conhecimento livro . Quando alguém diz "Você conhece (insira um idioma) bem?" , ele não quer dizer "Você memorizou cada pedaço da documentação, conhece todas as sobrecargas de cada função etc." . Eles geralmente significam "Você pode olhar para o código e facilmente (identificar falhas / introduzir alterações / corrigir bugs / refatorar / etc.)? Você pode tomar uma decisão informada sobre quais ferramentas usar para um determinado cenário? Você pode descrever as vantagens e desvantagens das soluções propostas? ".

Muitas linguagens são quase idênticas na ideia geral: a sintaxe pode ser diferente, alguns conceitos feitos de maneira diferente e algumas das advertências são exclusivas de uma linguagem, mas se você conhece bem, por exemplo, C #, pouco problema se alguém lhe pedir para fazer algo em Java.

Você precisa manter seu conhecimento atualizado: novamente, isso não significa que se um novo framework for lançado, você precisa saber de cor em na próxima semana - mas o conhecimento de que tal estrutura existe , quais são suas vantagens sobre soluções concorrentes, qual cenário seria essa estrutura ser usado e em quais cenários não deve ser usado etc. Isso, no meu entendimento , é manter seu conhecimento atualizado. Se além disso você pode digitar o código sem o uso de nenhum auxílio como documentação, mais poder para você - mas lembre-se de que não é o principal.

Saber uma solução está ok. Saber que existem 10 soluções possíveis, seus pontos fortes e fracos, onde encontrar sua implementação - isso é ainda melhor.

É possível encontrar um emprego com o que você sabe até agora - embora provavelmente não será um trabalho dos seus sonhos. No entanto, você deve se esforçar para encontrar um emprego que lhe ofereça:

  1. uma oportunidade de aplicar suas habilidades atuais em um cenário do mundo real
  2. Uma oportunidade de aprender o uso de outras habilidades, de preferência com alguém mais experiente do que você. E não me refiro apenas a habilidades técnicas estritas - as chamadas "habilidades pessoais" são tão importantes . Muitos desenvolvedores em início de carreira descartam a ideia de que comunicação, compreensão dos requisitos de negócios, negociação, avaliação dos investimentos de tempo e dinheiro necessários e similares são necessários para o crescimento de sua carreira. Não cometa esse erro.

Quero terminar com uma afirmação que pode ser verdadeira apenas na minha região (Europa Oriental):

Quando se trata de trabalho oferecer a seção "requisitos", muitas vezes você pode encontrar postagens que parecem exigir que você seja uma combinação de programador incorporado, web designer, arquiteto de aplicativo, desenvolvedor móvel, administrador de banco de dados e não faria mal se você também fosse um administrador de sistema. Não desanime com essas ofertas, muitas vezes as pessoas que as escrevem apenas copiam e colam o que o Google retornou como "palavras de programação que soam inteligentes". Se a descrição da vaga parece interessante para você, inscreva-se e avalie a oferta de emprego pessoalmente - de preferência após uma entrevista com alguém "técnico"

Resposta certa e seu último ponto é válido também no Reino Unido.A maioria das descrições de cargos são, na melhor das hipóteses, listas de desejos e, como você diz, muitas vezes elaboradas por pessoas muito distantes da realidade.Boas empresas procuram boas pessoas e uma boa pessoa é uma boa pessoa, mesmo que ainda não tenha trabalhado com a Tecnologia X
bharal
2018-02-27 11:15:42 UTC
view on stackexchange narkive permalink

Portanto ,

Sua pergunta não está certa, mas compreendo que as restrições colocadas aqui o colocaram em uma situação difícil.

Você será capaz de encontrar trabalho com html / css / e algum js? Garantido que sim.

Pagará o salário desejado e ficará em uma cidade em que deseja trabalhar? Provavelmente não.

O ponto crucial da minha resposta para você é isto: é muito mais fácil conseguir um emprego bem remunerado em uma tecnologia mais recente do que em uma tecnologia mais antiga.

Quando você é um desenvolvedor sênior, as pessoas pagam mais para domínio de js, html, css + jquery. Você não precisa conhecer o nó ou o que quer que seja para conseguir um emprego. Mas quanto mais jovem você for, mais necessário se torna saber as tecnologias mais recentes.

O motivo? Como a maioria das pessoas não consegue acompanhar, você acaba com um lote de desenvolvedores js e jquery - mais de 10 anos deles - entupindo as vagas de javascript do js &.

Há cada vez menos, no entanto, quem conhece o nó & angular e as coisas mais recentes.

A melhor coisa que um jovem desenvolvedor pode fazer é ignorar as tecnologias antigas - embora talvez não HTML &CSS, já que leva cerca de uma semana para aprender - e aprender algumas novas estruturas sofisticadas.

O Php7 ou 8 acabou de sair? Aprender isso. Angular, não sei, 3? Aprender isso. Aprenda as coisas mais novas - porque então você terá

  1. menos concorrência
  2. menos pessoas capazes de entrevistá-lo (elas não saberão bem o suficiente!)
  3. Isso torna muito mais fácil conseguir um emprego.

    Então, para responder à sua pergunta: Não. Você não precisa saber MUITO. Mas se você quiser escolher um emprego, aprenda a tecnologia mais recente em uma disciplina específica.

    Observação: estou incomodado que você tenha colocado "Jquery e algum javascript ", deveria, idealmente, ser o contrário. Além disso, as habilidades que você mencionou eram muito boas de se ter cerca de 7 anos atrás. Agora, todo o ecossistema de front-end mudou um pouco.

Então, novamente, como você mencionou, se você conhece JavaScript bem o suficiente, então não há muita curva para aprender a estrutura JS mais recente e brilhante (que muda a cada 3 meses: D).A tendência mais recente parece ser a segunda vinda da programação funcional em Node.js
@juha sim, você está certo, pensei ter deixado isso mais explícito, mas não o fiz.conheça o básico (html, css, js) ENTÃO aprenda um framework sofisticado
* "Quando você é um desenvolvedor sênior, as pessoas pagam mais pelo domínio de js, html, css + jquery." * Mais do que isso, quando você é um desenvolvedor sênior, as pessoas geralmente pagam mais por um domínio deas questões do * panorama *.Geralmente, haverá menos trabalho pesado (exceto, por exemplo, provas de conceito) e mais atenção às principais decisões arquitetônicas.Esses, e ainda mais o * como decidir * qual arquitetura pode ser a certa para o produto que seu empregador está construindo, mudam * muito mais lentamente * do que o que acontece de ser o mais recente e melhor em frameworks para o dia.
Erik
2018-02-27 14:52:41 UTC
view on stackexchange narkive permalink

Você está começando uma carreira como trabalhador do conhecimento. Portanto, além de esperar que você saiba MUITO, espera-se que continue aprendendo novas ferramentas pelo resto de sua vida profissional .

Você será membro de um das indústrias que mais crescem e mudam, então você aprenderá novas linguagens, bibliotecas, estruturas e outras formas ou trabalhará todos os anos. Você pode ter conhecimento suficiente agora para encontrar um emprego de baixo nível em algum lugar (se não for muito exigente), mas se quiser construir uma boa carreira em desenvolvimento de software, a disposição para aprender é a habilidade número 1 de que você precisa.

Se essa ideia o assusta, você realmente deve reconsiderar se esta é a carreira de longo prazo que deseja seguir.

Walfrat
2018-02-27 16:40:41 UTC
view on stackexchange narkive permalink

Vou estar do lado oposto dos outros sobre a aprendizagem repetidamente.

Na minha opinião, você não precisa saber muito idioma, você precisa ter aprendido e praticar o suficiente para se sentir confiante sobre suas habilidades atuais e desenvolver novas.

Então, primeiro, não se perca indo a todos os lugares, você será apenas medíocre em qualquer lugar, produzindo coisas "funcionais" e impossíveis de manter. Escolha algumas coisas, atualizadas, mas que já viveram alguns anos e ainda estão ativas, construa um bom financiamento e depois procure estender seu conhecimento onde você quiser / precisar.

Então, para a web, escolha o cliente- tecnologia de lado, lado do servidor, lado do banco de dados, trabalhe nisso o suficiente para que você possa discuti-los com confiança em entrevistas.

Depois que sua base estiver boa o suficiente, depende de você (e do mercado) como muito você deseja pegar um conjunto completo de novas tecnologias e / e manter atualizadas as atuais.

Observe também que se você ainda não trabalha com frameworks, a primeira você escolherá é difícil porque é o primeiro depois que você ver dois ou três, será muito mais fácil. Observe que você também pode ter azar e realmente acabar em uma estrutura de baixa qualidade (menção especial às estruturas internas da empresa).

São toneladas de coisas parecidas na informática, o resto é apenas sobre adaptação.

"que você tem certeza que viverá alguns anos" -> boa sorte com isso;)
Sim, acho que deveria ter dito o contrário, “já vivi alguns anos e ainda está ativo”.


Estas perguntas e respostas foram traduzidas automaticamente do idioma inglês.O conteúdo original está disponível em stackexchange, que agradecemos pela licença cc by-sa 3.0 sob a qual é distribuído.
Loading...