Por que um diploma de informática é importante para um programador profissional? [fechadas]

63

Eu tenho uma licenciatura em ciência da computação. Foi ótimo para abrir portas, conseguir um emprego. Tanto quanto me ajudando no campo profissional de programação C # .NET (a plataforma mais popular e linguagem na área que eu trabalho se não os estados unidos inteiros em mãos para baixo o sistema operacional mais popular do mundo) é dificilmente útil. Por que você acha que isso o ajuda como programador em sua carreira profissional (fora do algoritmo prims para impressionar algum entrevistador)?

Na adaptação do mundo de hoje, uma mente rápida, comunicação strong, OO e habilidades fundamentais de design permitem que um desenvolvedor escreva software que um cliente aceitará. Essas habilidades são apenas desnatadas no programa cs. Em minha mente, a leitura de um livro de 500 páginas em C # por Wrox oferece um conjunto de habilidades muito mais do que 4 anos dos cursos blaster de matemática. Muitos discordam. Então, por que um diploma de ciência da computação é importante?

    
por P.Brian.Mackey 17.03.2011 / 18:30
fonte

29 respostas

133

Por que um diploma de ciência da computação?:

  • Trabalhei com um desenvolvedor que armazenou milhares de itens em uma HashTable e depois apenas iterou pelos valores. Ele nunca acessou através de um hash. Ele obviamente não sabia como um HashTable funcionava ou porque você usaria um - um grau de CS poderia ajudar nisso.
  • Ao trabalhar com expressões regulares, parece mais fácil para as pessoas com exposição à teoria básica de autômatos e linguagens formais raciocinar sobre o que está acontecendo e solucionar suas expressões - um grau de CS poderia ajudar com isso.
  • Um desenvolvedor recém-chegado da escola pode decompor problemas em várias mentalidades paradigmáticas (OO, funcionais, lógicas) imediatamente, enquanto um novo desenvolvedor não graduado precisa de experiência antes de poder fazer o mesmo.
  • As escolas ensinam complexidade computacional. Os desenvolvedores que não são licenciados podem sentir o que é melhor, mas às vezes é bom ter um entendimento formal, especialmente ao explicar os resultados para um colega.
  • Um grau oferece uma introdução a muitos modelos da máquina - hardware, SO, estruturas de dados comuns, redes, VMs. Com esses modelos no fundo da mente, é mais fácil desenvolver um palpite em que um problema persista quando algo dá errado. Mais uma vez, os desenvolvedores que não são licenciados constroem os mesmos modelos, mas isso leva tempo.
  • A orientação especializada por meio de qualquer disciplina pode ajudar o aluno a evitar becos sem saída e tópicos perdidos. A leitura é ótima, mas não substitui um grande professor.

Isso não quer dizer que um grau de CS seja necessário para ser um ótimo desenvolvedor. Dificilmente. Alguns dos melhores desenvolvedores com quem trabalhei não têm diploma. Um grau lhe dá um começo correndo. Quando você se formar, você (esperançosamente) escreveu uma boa quantidade de código em vários idiomas e ambientes para resolver muitos tipos de problemas. Isso o coloca bem no caminho para as 10.000 horas necessárias para ser um especialista.

Um segundo benefício é que ele mostra aos empregadores que você é capaz de se comprometer com um objetivo de longo prazo e ter sucesso. Em muitas empresas, acredito que isso é mais importante do que o que você aprendeu.

    
por 17.03.2011 / 20:04
fonte
87

Em 40 anos, espero que o .NET e o C # sejam nada mais do que uma pilha de códigos legados em sistemas operacionais obsoletos.

Mas os conceitos fundamentais da ciência da computação serão tão vivos quanto foram quando Shannon, von Neumann, Knuth, Dijkstra, Hoare e os outros os tiraram dos fundamentos da lógica formal e da matemática ... há mais de 40 anos .

    
por 17.03.2011 / 20:04
fonte
36

Eu uso quase todo o CS que eu estudei na escola (*) todos os dias no meu trabalho. Se você quer trabalhar em design de linguagens de programação, otimização de mecanismos de busca, análise de quantificação ou qualquer campo similar, suponho que você poderia fazê-lo sem um grau relevante, mas parece um monte de coisas tem que aprender no trabalho. Eu não sou particularmente altamente educado, dada a minha linha de trabalho; muitos de meus colegas têm PhDs em ciência da computação e vários deles são professores de CS.

Conseguir meu diploma foi tremendamente valioso para mim; pagou-se muitas, muitas vezes tanto em dólares como em satisfação.

Dito isto, compreendo perfeitamente o seu ponto de vista. A maioria das pessoas que programam computadores tem trabalhos que não exigem um grau de computação gráfica; eles exigem, digamos, uma sólida experiência em nível de comunidade-faculdade em programação prática, além de acompanhar as tendências atuais do setor. E tudo bem. Você não precisa de um diploma em biologia marinha para administrar uma loja de aquários de sucesso, e eu acho que as lojas de aquários são incríveis. Mas é muito difícil conseguir um emprego no Woods Hole, se todos você souber como criar goldfish.

(*) Eu tenho um bacharelado em Matemática Aplicada e Ciência da Computação de Waterloo.

    
por 18.03.2011 / 00:34
fonte
22

É importante porque a tecnologia não permanece estática. A informática é a base de toda a tecnologia digital. A maioria dos programadores autodidatas dura exatamente um ciclo de tecnologia porque falta os fundamentos para sobreviver a uma grande mudança de paradigma. Claro, existem exceções à regra, mas uma base sólida na ciência da computação aumenta muito as chances de sobreviver a uma grande mudança de paradigma.

    
por 18.03.2011 / 02:05
fonte
14

Depende do que você quer fazer. Se o seu objetivo é principalmente programar software de negócios em grande escala, onde o problema de negócios e os problemas práticos de gerenciamento de complexidade são a parte difícil, então, sim, um grau de computação gráfica não vai ajudar muito. Se, no entanto, seu objetivo é programar coisas onde a principal dificuldade está no lado técnico, então um grau de CS é mais útil. (Embora eu não tenha um grau de graduação, então me sinto um grande hipócrita por dizer isso, então sinta-se à vontade para acrescentar "ou auto-aprendizagem em assuntos de CS".)

Tenho certeza de que há muitos programadores por aí que são ótimos em gerenciar a complexidade, programar grandes e resolver problemas comuns de negócios, mas seriam totalmente perdidos se você pedisse que eles escrevessem um alocador de memória ou uma biblioteca de paralelismo. , ou uma biblioteca de coleções, ou um sistema operacional, ou um compilador, etc. Eu tenho certeza que o oposto também existe em uma extensão decente. Ambos têm o seu lugar e merecem respeito, mas um diploma de CS ajuda muito mais no lado técnico.

    
por 17.03.2011 / 18:40
fonte
12

Eu não acho que um grau de CS seja um indicador absoluto de que uma pessoa é um bom desenvolvedor de software. Na verdade, comecei minha carreira como programador com um grau de matemática, mas com um strong viés de CS (matemática e CS foram integrados no meu programa de estudo). Eu acho que existem duas razões pelas quais isso importa, no geral.

1 - Porque os engenheiros não são o front-end para recrutamento

Pessoas de Recursos Humanos são. E enquanto imagino muitas pessoas revirando os olhos, eu digo "graças a Deus!" O que é mais importante - que você deixe os engenheiros fazerem coisas (ou quebrar coisas), ou que você os faça ordenar através de milhares de currículos e fazer milhares de entrevistas?

Então, temos pessoas de RH e pessoas de RH selecionando os candidatos até chegarmos a um grupo-chave que pode ser exibido por engenheiros. As pessoas de RH aprenderam ao longo do tempo que ter um diploma de CS é um indicador bastante strong de que o candidato sabe alguma coisa sobre o desenvolvimento de software. Espero que eles também saibam que escrever software por 20 anos é um bom indicador de que o candidato pode escrever software.

2 - Porque ter algum tipo de sistema sobre aprender CS é melhor do que nenhum

O CS é um campo enorme com muito para saber. E está mudando o tempo todo. Hoje em dia, posso dizer com segurança que os 75% do curso na minha graduação se tornaram irrelevantes para minha carreira. E que o curso do meu mestre de 5 anos atrás está se depreciando rapidamente. Mas quando comecei, fiquei contente por ter pago a uma grande instituição para me ensinar algo sobre organização de computadores, redes, bom processo de engenharia de software, projeto orientado a objetos, compiladores e a sintaxe / semântica de uma linguagem de programação que era atualmente comercializável.

E eu fiquei contente de estar em um ambiente onde alguém foi pago para explicar as coisas para mim quando o projeto de livro / website / volta não era inatamente óbvio.

E eu estava feliz por ter tido acesso a um laboratório onde a saúde do computador e a SDE não eram problema meu - eu poderia mais ou menos me concentrar em uma pequena parte do problema, em vez de ter que consertar todas as ferramentas. necessário para resolver o problema.

E embora os cursos não ensinem explicitamente boa comunicação, acho que a única maneira de aprender realmente é trabalhar em equipe - o que é uma parte importante de muitas instituições líderes que oferecem cursos de graduação em ciências da computação.

E um cronograma com feedback frequente (por exemplo, notas e exames) que me permite saber se realmente entendi o que me foi ensinado.

Essas coisas combinam em minha mente para valer mais do que qualquer livro sobre o assunto, mas certamente não é tudo, acabe tudo. Há certamente coisas que eu não me importaria em melhorar as instituições de ensino superior, e acho que cerca de 10 anos depois de você se formar, o grau que você originalmente recebeu é menos importante do que o trabalho que você fez desde então.

    
por 17.03.2011 / 20:18
fonte
11

Para mim, a razão é que eles já passaram por alguns cursos difíceis e não desistiram. Alguns dos cursos, como Compiladores, Data Struct, Discrete Math (e outros), tendem a eliminar muitas pessoas dos programas de CS. Ter um diploma de CS significa que você trabalhou duro e pagou um preço (noites longas fazendo programas para trabalhar), ao invés de sair por diversão.

    
por 17.03.2011 / 23:09
fonte
10

Para mim, é uma questão de mindset .

Sua mentalidade define como você abordará um determinado problema e permite que você considere uma gama maior de oportunidades do que as que não são instruídas nos conceitos.

Um exemplo típico é o problema "Vendedor em viagem" , onde você sabe que 1) é NP-completo para o versão geral, então você tem que tentar todas as possibilidades, mas 2) que se você sabe mais sobre o problema você pode aproximar dentro de um certo limite ou dizer que você sabe que AC é sempre maior que AB + BC (que é verdade para distâncias mas não para preços) permitindo que você resolva em menos tempo.

Outro exemplo é a Análise Numérica, em que você precisa saber que, para minimizar a imprecisão numérica, é necessário abordar seus cálculos de maneira diferente do que o modo matematicamente correto. Isso requer conhecimento teórico e é improvável que seja detectado no caminho, a menos que você tenha sido explicitamente mordido por ele.

    
por 17.03.2011 / 19:12
fonte
9

Realmente? Uau.

Então você está me dizendo que as habilidades C # e OOP são suficientes e você pode criar seu próprio algoritmo para ordenação aleatória e decifrar as nuances mais sutis de como lidar com problemas completos NP na vida real?

C # e OOP são bons, mas se você está tentando fazer algo que não seja trivial, então você precisa dos fundamentos da ciência da computação.

Cara, você nem saberá qual contêiner C # usar se suas estruturas de dados ou habilidades de algoritmos não estiverem à altura da marca.

Vamos crescer agora.

    
por 17.03.2011 / 19:32
fonte
5

Suponho que você realmente não se envolveu muito com o curso na época, apenas pegou o que precisava e saiu, ou foi para uma escola que considerava as especializações em CS como "codificadores" e não como "programadores". Além disso, algumas das minhas melhores / favoritas aulas de "CS" são aquelas que - pelo menos na minha Universidade - estão sob o departamento de Engenharia Elétrica. Minha exposição a várias arquiteturas e estilos tem sido tão importante e meu grau facilitou isso em um ambiente "controlado".

Classes que não são apenas algoritmos e fluff cutesy:

  • Compiladores
  • Sistemas operacionais
  • VHDL / Sistemas incorporados
  • Montagem e microcontroladores
  • Engenharia de Software

E finalmente uma aula que me superou, apenas algoritmos e estruturas de dados - Inteligência Artificial. Há coisas que, através do sistema universitário, serão muito mais rápidas no processo de aprendizagem, e eu consideraria o que foi aprendido como inestimável na hora de procurar emprego mais tarde.

    
por 17.03.2011 / 19:59
fonte
4

Minha opinião é que, a menos que você esteja se candidatando a cargos de "Computer-Sciency", qualquer grau que implique um foco em habilidades com computadores é praticamente equivalente.

Na verdade, muitos dos programadores que conheço conseguiram um diploma em uma disciplina completamente diferente. Os melhores programadores que conheço são graduados em Engenharia Civil, Lingüística, Economia e Finanças.

No final, quando você tiver alguma experiência, seu diploma se tornará um teste de aprovação / reprovação para um recrutador. Ou seja, a menos que você tenha conseguido em uma escola impressionante ou em uma pós-graduação, não importa muito o seu grau de especialização.

    
por 17.03.2011 / 21:53
fonte
4

para mim e para muitos dos meus colegas, não (nenhum de nós teve os graus de CS)

    
por 17.03.2011 / 23:13
fonte
3

OK, então o que acontece com

Se você passou pelos seguintes assuntos:

a.Arquitetura e Organização de Computadores

Engenharia de Software

c.DBMS

d.Edição básica

e. Circuito Eletrônico Digital Básico

f.Microprocessador

g.Compiler Design

Você acha que todos os itens acima são apenas para a formalidade? Lembre-se de que os pontos acima tornam o "bom programador" um "ótimo programador".

Passe por isso para ler sobre a importância dos assuntos elétricos e eletrônicos

    
por 17.03.2011 / 20:08
fonte
3

I have a degree in computer science. It has been great for opening doors, getting a job. As far as helping me in the professional field of C# .NET programming (the most popular platform and language in the area I work if not the entire united states on hands down the most popular OS in the world) its hardly useful.

70% + do código é escrito em C (já que há mais dispositivos incorporados do que aplicativos de alto nível). De acordo com pesquisas de emprego populares como dice ou o índice TIOBE, o Java é a linguagem de programação mais popular para a empresa (pois há mais servidores back-end Unix / Linux do que servidores Windows.) Há mais smartphones e tablets (a plataforma de computação o futuro) executando alguma variante do Linux ou Mac OS que o Windows, programado em qualquer coisa, exceto C # ou .NET.

Olhe para o seu roteador em casa, olhe para o seu celular, olhe para o computador dentro do seu carro, olhe para o micro-ondas em casa, para os controladores dentro do sistema de A / C da sua casa, dentro do seu telefone e do fax do seu trabalho. e impressora / scanner. Veja o número de aparelhos informatizados (que superam os sistemas Windows).

Você acha que eles estão programados em C #?

Se você realmente acredita que o .NET ou o C # são as plataformas mais populares do mundo, você pode querer voltar para a sua escola de CS e pedir um reembolso.

Why do you think it helps you as a programmer in your professional career (outside spouting off to prims algorithm to impress some interviewer)?

Talvez porque haja muito mais sobre programação do que fazer páginas web dinâmicas de desenvolvimento básico e aplicativos corporativos? Para isso, você não precisa nem de bacharel, um AA é suficiente - eu sei porque comecei minha carreira de programação com um diploma de AA e lentamente, mas com certeza trabalhei em um CS e trabalhei na pós-graduação enquanto trabalhava em período integral como desenvolvedor.

Há desenvolvimento embarcado, desenvolvimento de drivers de dispositivos, desenvolvimento de sistemas operacionais, desenvolvimento de algoritmos, sinais, comunicações, protocolos de rede, desenvolvimento de mecanismos de banco de dados, desenvolvimento de sistemas de arquivos, computação distribuída, compiladores. Não pesquisa, mas trabalho real em organizações com fins lucrativos. Com exceção dos naturalmente talentosos, um deles normalmente não pode cortá-los em nenhum desses campos industriais sem um grau de CS (às vezes nem mesmo com um diploma de BS).

Uma pessoa que recebe um grau de CS e presta atenção a isso sabe disso. Por que você não faz?

In today's world adaptation, a quick mind, strong communication, OO and fundamental design skills enable a developer to write software that a customer will accept.

OO surgiu por causa do CS. E a maioria das pessoas que pensa em fazer OO não consegue nem fazer um bom trabalho. Apenas olhe para fora e veja o estado ruim do software (em particular em Java e .NET, sem mencionar o PHP.) Um sólido background em CS (ou um diploma de pós-graduação em algum tipo de engenharia) não garante 100% de bom entendimento de OO e habilidades analíticas, mas geralmente ajuda. OTH, não ter um histórico básico de CS é tipicamente uma bandeira vermelha quando se trata de habilidades analíticas e OO. Temos evidências empíricas suficientes na indústria para sustentar essa afirmação.

These skills are only skimmed over in the cs program.

Dependendo do programa CS e dependendo do aluno. Pelo menos para mim, eu vi muitos bons cursos sobre design, análise de OO, ferramentas e práticas comerciais, tivemos cursos de co-ed com empresas locais e estágios, projetos financiados por empresas e pesquisa, redação técnica, o nome dele. Desculpe, não posso relacionar ou entender esta afirmação.

In my mind, reading a 500 page C# book by Wrox offers far more useable a skillset than 4 years of the comp sci math blaster courses.

Novamente, dependendo do trabalho que você faz. Mesmo na empresa, usei meu CS para realmente consertar as coisas ou melhorar. Tudo isso envolvendo modelagem, arquitetura, computação distribuída, segurança e alto desempenho, alta disponibilidade e tolerância a falhas. Eu aprendi tudo isso no CS.

Não há nada de errado em usar um livro da Wrox para obter um conjunto de habilidades específico do contexto , específico da tecnologia . Eu faço isso sozinho. Mas meu histórico de CS me dá o contexto para trabalhar. Sem minha experiência em CS, tudo que eu seria capaz de fazer seria programar, codificar (o que é tudo o que eu poderia fazer quando eu só tinha um diploma de AA no início de minha carreira).

Many disagree.

Surpreendente, não é.

So, why does a computer science degree matter?

Quem você acha que cria os mecanismos de banco de dados do Google, hadoop, cassandra ou de alto desempenho? Quem você acha que escreve o kernel do sistema operacional Windows? Quem você acha que programa as ferramentas que você usa para fazer seu desenvolvimento em C #?

Uma coisa que tenho certeza é que as ferramentas que você usa para fazer o desenvolvimento de C #, há um cara de CS por trás dele.

Se você precisa ou não de um grau de CS, depende do tipo de trabalho que você faz, do tipo de trabalho que você quer fazer, do tipo de trabalho que você é capaz de fazer.

Há muito trabalho na empresa e no desenvolvimento da Web que não requer um grau de CS. Eu concedo isso. Eu também sei que o mundo da programação é muito mais amplo do que apenas esses dois campos, com muitos campos (a maioria deles na verdade) exigindo um grau de CS ou mais.

Você tem um grau de CS, como você não sabe que é um mistério.

    
por 18.03.2011 / 15:06
fonte
1

Existem algumas noções básicas que eu me lembro de ver nos meus cursos de CS que foram bastante úteis às vezes. O processo Waterfall e seus passos têm sido algo que eu usei repetidamente na minha carreira com alguma variação para o Agile, onde ele não é tão rígido nos passos, mas os mesmos passos estão lá.

Habilidades para resolver problemas e várias heurísticas algorítmicas também podem ser úteis. Há algo a ser dito sobre os benefícios indiretos de um diploma de CS. Por exemplo, aprender a justificar uma resposta para mostrar porque algo está correto é apenas uma das poucas habilidades que eu aperfeiçoei na universidade, mas não tenho certeza de como isso seria óbvio no fim do programa. / p>     

por 17.03.2011 / 19:05
fonte
1

Concordo com o ponto de Thorbjørn Ravn Andersen em relação à mentalidade. Essa é a principal coisa que você desenvolve com um bom currículo de CS.

Basicamente, trata-se de entender coisas como estruturas de dados e algoritmos. Não que você não possa aprender isso sozinho, mas um bom currículo de CS proporcionará melhor exposição.

    
por 17.03.2011 / 19:51
fonte
1

Escrita

No desenvolvimento de software corporativo, é vital poder escrever código e escrever . Com isso quero dizer: escrever e-mails, relatórios de bugs, documentos técnicos etc. Tanto a escrita quanto a codificação exigem clareza de pensamento e economia de expressão apropriada.

Entre dois desenvolvedores de software, minha aposta é que aquele com um grau de bacharelado de uma universidade sólida (programa de CS strong e eletivas exigidas nas ciências humanas) tem ambas as habilidades. (É verdade que isso não é uma garantia: as pessoas das humanidades podem ser grandes codificadores e escritores de primeira linha; muitos graduados em CS são máquinas de codificação que não sabem escrever, e assim por diante.)

Leitura

Um mentor meu alegou que poderia julgar os desenvolvedores pelo que leram. O post original menciona os livros da WROX. Na minha opinião, é mais provável que alguém com um diploma de CS procure esses livros de TI profissionais e seja capaz de usá-los efetivamente. Se alguém pode lidar com CLR , então pode-se lidar com "Professional C #".

Matemática

A matemática desenvolve lógica, prova, rigor, etc., e o efeito colateral é que auxilia na escrita. Embora a maioria dos negócios de TI não exija habilidades matemáticas intensas, a pessoa com um grau de especialização em ciências da computação o terá quando necessário. Esta é uma maneira muito melhor de passar pela vida do que viver sem ela e imaginar o que você perdeu na escola.

    
por 18.03.2011 / 01:20
fonte
1

Eu acho que isso realmente depende da qualidade do programa CS que você passou. Eu sei o que você quer dizer, a maior parte do código que escrevo diariamente é apenas VB.Net padrão, obter os dados do SQL Server, colocá-lo no formulário, salvá-lo de volta para o banco de dados, fazer alguns relatórios. Lave, enxague, repita. (Muito chato às vezes) O programa de CS pelo qual passei, além de cobrir a teoria e o conhecimento fundamental, ensinou muitas coisas práticas. Cobrimos áreas como design de software, design de banco de dados e gerenciamento de projetos. Aprender linguagens de programação foi a parte fácil, o design e a metodologia de criação de sistemas de software foi o que tirei da minha experiência universitária. Recebemos projetos baseados em problemas do mundo real, às vezes até mesmo projetando sistemas de software para outros departamentos no campus.

Como programadores, obviamente, temos a capacidade de aprender sozinhos, é uma necessidade em nosso campo. Eu tenho que dizer que estou muito feliz por ter passado pelo programa CS. Meus professores foram incríveis e me ensinaram um pouco. Meus colegas de classe eram pessoas muito divertidas e divertíamos muito as noites no laboratório de informática. Para dizer a verdade, sinto falta daqueles dias ......

    
por 18.03.2011 / 03:47
fonte
1

Está tudo na capacidade de viver vicariamente.

Se você pular o curso, você provavelmente terá que aprender as lições de uma forma muito pessoal (também conhecido como o caminho mais difícil). Falta de um grau não significa que você terá o caminho mais difícil de aprender por tentativa e erro; no entanto, o diploma garante a exposição a uma arca do tesouro de conhecimentos adquiridos anteriormente que outras pessoas precisavam ganhar em noites de atraso, sessões de programação frustradas e, geralmente, "fazer da maneira mais difícil".

A pessoa realmente excelente não descartará o que os outros descobriram ser verdade, mas, ao contrário, a desafiará até que eles conheçam as limitações do conhecimento e, em seguida, joguem com o "sistema" de idéias recém-adquiridas até que se tornem suas. Ele está de pé sobre os ombros daqueles que vieram antes, e vivendo as soluções dos anos passados sem ter que redescobri-los.

É claro que uma pessoa com um diploma de informática nem sempre é a melhor candidata. Existem aqueles indivíduos únicos que foram levados ao fluxo, mas (por alguma estranha razão) se recusam a beber dele.

    
por 18.03.2011 / 05:37
fonte
0

Eu tenho 21 anos e acabei de terminar um curso de graduação em CS. Eu sinto que por melhor que você seja em programação, se você é um graduado em CS, você já estará exposto a vários campos. Então, se você quer aprender coisas novas, não tenha medo de explorar mesmo que seja irrelevante . Se você é um especialista em tecnologia ou linguagem de programação, bom. Mas não acho que você será aventureiro e esteja disposto a procurar outras tecnologias. Isso é como você se suja (e rápido também). Você não vai aborrecer que o que você explora será irrelevante, uma vez que não vai ajudá-lo a ganhar dinheiro. (Você já estudou um monte de coisas irrelevantes no seu CS UG;)).
É a paixão no CS que você tem depois de se formar e que faz de você um profissional de software.
Alguém concorda?

    
por 18.03.2011 / 04:45
fonte
0

Bem, quando eu entrei no CS, eu achei que uau, eu sou muito bom como sou e não vou aprender nada aqui ... Depois de 5 anos, eu só aprendi a trabalhar em equipe, e algumas coisas de engenharia que me separam de alguém que pode escrever apenas código e alguém que pode pensar sobre o que ele faz antes de codificar, em suma, me ensinou a pensar antes mesmo de digitar uma única letra em meu editor de texto ou ide .

    
por 18.03.2011 / 11:04
fonte
0

Para conseguir um emprego usando uma linguagem de código aberto, isso não significa agachamento. A maioria das empresas recruta com base na capacidade e não nas qualificações, e linguagens como o PHP têm uma reputação de amadores de que as pessoas podem ter talento sem ter estudado CS. A única vez que ajuda se você está conseguindo um emprego usando linguagens .Net, já que a maioria dos amadores não vai querer desembolsar milhares por uma licença apenas para mexer nos fins de semana, portanto, alguém que procura um primeiro emprego em C # provavelmente só terá 2-3 anos de experiência.

É claro que a experiência comercial é realmente valiosa, pois demonstra sua capacidade de fornecer código de qualidade aos prazos.

Em conclusão, você recebe entrevistas para trabalhar com idiomas não abertos.

    
por 18.03.2011 / 16:45
fonte
0

Um diploma da Collegue ou University significa que você estudou e tem algum conhecimento de C.S., algumas coisas básicas que são necessárias para um trabalho no mundo real, mesmo que você tenha que aprender outras coisas sozinho.

Além disso, quando um I.T. recrutador tem que encontrar um Soft. Dev., E 500 candidatos enviam seu currículo, e têm que entrevistar 50% deles, ter um diploma em seu currículo, ajuda tanto o recrutador quanto suas chances de ser contratado.

(de um desenvolvedor de software que estudou algumas H.H.R.R.)

    
por 18.03.2011 / 18:56
fonte
0
Provavelmente isso não ajuda muito, mas agora que aprendi a montagem e todo o conhecimento envolvido sinto um programador mais completo e tenho certeza de que isso acontecerá novamente quando eu for para a universidade. Quero dizer, eu uso principalmente C ou VB, eu não preciso saber o que é um estado de espera para fazer meus programas, mas simplesmente saber o que está acontecendo por trás do meu código é ótimo! E o conhecimento ajuda você a escrever um código melhor, mais rápido e mais sustentável. Um diploma de ciência da computação dá exatamente o conhecimento necessário para escrever um código ótimo em minha opinião.

    
por 19.03.2011 / 19:30
fonte
0

engenharia de software hoje é uma ciência experimental não aplicada à matemática.

Os cursos de informática enfatizam os algoritmos, quanto do seu trabalho envolve a implementação ou mesmo o uso de novos algoritmos e estruturas de dados?

Quanto envolve lidar com camadas de frameworks e abstrações gotejantes? Quanto está tentando determinar o que alguma API realmente faz - e não o que os documentos implicam? Quanto está testando e decidindo como testar?

Por tudo o que um grau de física ou química é muito melhor formação do que ter memorizado Knuth

    
por 19.03.2011 / 19:38
fonte
0

É importante porque os recrutadores têm um indicador de que você não é completamente ignorante sobre o que deve fazer, mas isso não implica necessariamente que você realmente saiba o que está fazendo ou que está fazendo isso de uma maneira tecnicamente conveniente.

Existem pessoas brilhantes com formação que amam o que estão fazendo e são realmente boas programadoras, e também há idiotas com diplomas que são programadores ruins e nem conhecem alguns fundamentos. Existem pessoas brilhantes sem graduação que podem desenvolver qualquer coisa (software de negócios / compiladores / um sistema operacional) e há idiotas sem graduação que não sabem como usar uma hashtable corretamente.

    
por 25.04.2011 / 10:56
fonte
0

Absolutamente correto, o grau de ciência da computação não importa muito; e é por isso que sua única escolha deve ser obter um diploma de engenharia.

Ao entrevistar candidatos com várias origens, a única característica que se destaca para os candidatos que não têm nenhum grau é a seguinte: falta de habilidades de comunicação técnica e falta de disciplina. Estas são as características fundamentais aprendidas ao obter qualquer diploma de ciências (eu diria ainda mais com um diploma de engenharia).

Com a maioria das coisas que são iguais (e uma única rodada de entrevistas, muitas vezes surge com "quase iguais" candidatos), eu iria contratar a pessoa com diploma de engenharia em primeiro lugar, o grau segundo a ciência da computação, eo terceiro não graus. No entanto, existem maneiras de fazer as coisas muito desiguais na comparação, de modo que qualquer um pode bater para fora mesmo aqueles com um grau pedigree - mas isso é uma questão separada, não é?

    
por 13.08.2011 / 00:53
fonte
-1

Para um programador ... não faz muito (a não ser abrir portas para entrevistas, como você disse).

Para um trabalho de CS (pesquisa, análise de algoritmo, linguagem formal e design). É improvável que você aprenda essas coisas em qualquer outro programa não baseado em matemática.

// Isenção de responsabilidade: minha graduação é em TI, então tive que voltar para todos os outros cursos para realizar na minha linha de trabalho.

    
por 18.03.2011 / 00:47
fonte
-1

Eu tenho um diploma relacionado ao computador. O que me ajudou a obter meu primeiro papel no computador foi o fato de que o terceiro ano era um estágio como administrador de TI. Eu recomendo esquemas de colocação no trabalho dentro da educação.

    
por 18.03.2011 / 11:26
fonte