[ad_1]

Eu não tenho um diploma em Ciência da Computação, então tive que criar o meu.

Quando me formei no bootcamp de codificação, cinco anos atrás, eu estava completamente despreparado para entrevistas técnicas. Meu campo de inicialização de codificação não apenas passou um breve (menos de alguns dias!) Em algoritmos e na entrevista de codificação, mas também fiquei doente durante esse período.

Outros candidatos que se candidatavam aos mesmos empregos que eu tinha quatro anos na escola trabalhando em seu diploma em ciência da computação. Eu tive três meses em um bootcamp onde aprendi alguns conceitos básicos, Rails, e me ensinei o Angular.js.

Nos últimos anos, tive que preencher as lacunas no meu conhecimento com recursos que eu poderia encontrar on-line e de graça. Trabalhei como engenheiro sênior em empresas como a Eventbrite e até escrevi um livro da O’Reilly. Sou a prova de que você não precisa de um diploma de CS para ter sucesso como engenheiro.

Aqui está como eu fiz isso.

Introdução à Ciência da Computação

Antes de tentar mergulhar com aulas complicadas de CS, recomendo que você comece com um curso básico. Isso ajudará a fornecer uma visão geral sólida e também a se sentir um pouco menos intimidado. Se você passar algum tempo tendo uma visão geral sólida, o restante de suas aulas gratuitas de graduação em CS será muito mais fácil.

Meu curso favorito era CS50: Introdução à Ciência da Computação por Harvard.

Esta é provavelmente uma das minhas aulas favoritas de todos os tempos. Eu sempre amei a idéia de Harvard, então era meio óbvio para mim fazer uma aula gratuita de ciência da computação lá. Eu até pensei brevemente em completar um dos Certificações Harvard para programação, mas era caro, então fiquei com o curso CS50 gratuito.

Eu não acabei recebendo o certificado com o Harvard CS50. Eu pensei que seria tão poderoso para listar o curso no meu currículo. Minha regra geral quando se trata de pagar por um certificado online é que, a menos que seja um certificado da AWS da Amazon, provavelmente não vale a pena.

Se você se sentir intimidado a partir de um curso de Harvard (o que eu fiz também!), Você poderá encontrar um curso on-line mais fácil para se sentir mais confortável antes de entrar em tópicos complicados.

Ciência da Computação 101 é uma introdução à ciência da computação desde o início. Você aprenderá como a Internet funciona, um pouco sobre segurança de computadores, o que é um gigabyte, algum conhecimento de codificação e muito mais.

Algoritmos

Comece com os algoritmos a seguir. A Universidade de San Diego oferece um curso gratuito, Especialização em Estruturas de Dados e Algoritmos, que possui uma quantidade enorme de conteúdo disponível.

É impressionante se você olhar para todo este curso e achar que precisa concluí-lo imediatamente e entender tudo. Tente se concentrar em uma seção de cada vez e revise os conceitos regularmente.

E se fazer um curso universitário sobre estruturas de dados e algoritmos o deixa um pouco enjoado, você pode começar pequeno.

A Udacity tem um curso gratuito, Introdução a estruturas de dados e algoritmos. Adoro fazer cursos gratuitos sobre o Udacity e este possui muitas informações excelentes. Você cobrirá matrizes, listas vinculadas, pilhas, pesquisa binária, mapas, pilhas e muito mais. Este curso pode fornecer uma excelente visão geral, que o ajudará a ter sucesso no curso mais complicado da Universidade de San Diego.

Se você se sentir corajoso depois de concluir um curso introdutório, o MIT oferece um curso sobre Estruturas de dados avançadas.

Sistemas operacionais

O Udacity possui um conteúdo gratuito muito legal. Eles oferecem uma classe chamada Introdução aos sistemas operacionais isso é da Georgia Tech. Este curso orientará você em threads, simultaneidade, sistemas distribuídos e muito mais.

Eu também descobri que o livro, Sistemas operacionais: Três peças fáceis, está disponível online e gratuitamente. Livros como esse realmente me ajudaram a me sentir mais confiante ao falar sobre simultaneidade e persistência.

Bases de dados

Os bancos de dados me confundiram completamente quando eu comecei. Tentei evitar trabalhar com eles o máximo possível desde o início. Pedi ajuda a um engenheiro sênior o tempo todo e pensei que, por não ter um diploma de CS, não deveria estar trabalhando com um banco de dados.

Uau, eu estava tão errado.

Finalmente tive coragem de trabalhar com algum código de back-end e adorei descobrir como escrever solicitações eficientes para obter dados do back-end e escrever consultas.

Stanford oferece um curso online gratuito sobre Bases de dados. E se isso é muito intimidador para começar, o Udacity oferece um curso gratuito sobre bases de dados isso será muito mais fácil de manusear.

Matemática

Quando eu estava contemplando um diploma de CS na faculdade, todos me disseram que eu precisava ser realmente bom em matemática. Eu nunca obtive o diploma de nível superior e, cinco anos depois, ainda não precisava usar muita matemática.

Mas a matemática pode ensinar a você lógica que, por sua vez, pode ajudá-lo a se tornar um programador melhor.

Felizmente, o MIT oferece uma Matemática para Ciência da Computação curso de graça. Fazer um curso como Matemática para Ciência da Computação também pode ajudar a abrir mais possibilidades em tecnologia, como criar sua própria grau no aprendizado de máquina.

Eu descobri o curso de matemática para ciência da computação do MIT TeachYourselfCS, que é um site incrível com muitos recursos para aprender sobre ciência da computação.

O TeachYourselfCS também sugeriu um curso sobre Álgebra Linear que está disponível no YouTube. Eu amo conteúdo gratuito, então fiquei super feliz em encontrar isso livro na Álgebra Linear disponível on-line gratuitamente também.

Então, como você pode ver, você não precisa de um diploma de CS para ser engenheiro. Alguns dos engenheiros mais inteligentes com quem já trabalhei não tinham um diploma em CS. Às vezes eles não tinham diploma algum.

Não se preocupe se você não tem um diploma. Você só precisa ser capaz de fazer o trabalho.

Estou escrevendo um livro sobre como você pode se tornar um desenvolvedor de destaque, aceitar a entrevista e conseguir um emprego. Descubra mais aqui.

[ad_2]

Fonte