Iniciando minha carreira como cientista de dados, é necessária experiência em engenharia de software? [fechadas]


20

Sou estudante de mestrado na Universidade de Edimburgo, especializado em aprendizado de máquina e processamento de linguagem natural. Tive alguns cursos práticos focados em mineração de dados e outros sobre aprendizado de máquina, estatística bayesiana e modelos gráficos. Minha formação é bacharel em Ciência da Computação.

Fiz alguma engenharia de software e aprendi os conceitos básicos, como padrões de design, mas nunca me envolvi em um grande projeto de desenvolvimento de software. No entanto, eu tinha um projeto de mineração de dados no meu mestrado. Minha pergunta é: se eu quiser ingressar na carreira de cientista de dados, devo me candidatar a uma posição de cientista de dados graduado primeiro, ou devo obter uma posição de engenheiro de software graduado primeiro, talvez algo relacionado à ciência de dados, como big data infraestrutura ou desenvolvimento de software de aprendizado de máquina?

Minha preocupação é que eu possa precisar de boas habilidades de engenharia de software para ciência de dados, e não tenho certeza se elas podem ser obtidas trabalhando diretamente como cientista de dados graduado.

Além disso, no momento eu gosto de mineração de dados, mas e se eu quiser mudar minha carreira para engenharia de software no futuro? Pode ser difícil se eu me especializei tanto em ciência de dados.

Ainda não trabalhei, então meu conhecimento ainda é limitado. Qualquer esclarecimento ou conselho é bem-vindo, já que estou prestes a terminar meu mestrado e quero começar a me candidatar a cargos de pós-graduação no início de outubro.


1
Esta questão parece estar fora de tópico, porque se trata de conselhos de carreira. Provou-se que o aconselhamento profissional resulta em perguntas amplas ou orientadas para a opinião ou, às vezes, extremamente restritas, a maioria das quais não resulta em discurso útil. Se você não concorda com essa opinião, levante a questão sobre o Data Science Meta .
asheeshr

1
Pergunte ao Quora pode ajudar.
zihaolucky

Respostas:


30

1) Acho que não há necessidade de questionar se sua formação é adequada para uma carreira em ciência de dados. O IMHO em nível de CS é mais que suficiente para o cientista de dados do ponto de vista da engenharia de software. Dito isto, o conhecimento teórico não ajuda muito sem combinar a experiência prática , então eu definitivamente tentaria enriquecer minha experiência participando de projetos escolares adicionais, estágios ou projetos de código aberto (talvez aqueles focados em ciência de dados / aprendizado de máquina / inteligência artificial) )

2) Acredito que sua preocupação em se concentrar em ciência de dados muito cedo é infundada, desde que você pratique engenharia de software como parte de seu trabalho em ciência de dados ou adicionalmente em seu tempo livre.

3) Considero a seguinte definição de cientista de dados bastante precisa e espero que seja útil no seu futuro sucesso na carreira:

Um cientista de dados é alguém que é melhor em estatística do que qualquer engenheiro de software e melhor em engenharia de software do que qualquer estatístico.

PS O enorme número de recursos de hoje em tópicos de ciência de dados é impressionante, mas esse currículo de código aberto para o aprendizado de ciência de dados pode preencher algumas lacunas entre os respectivos currículos de BSc / MSc e a realidade da carreira em ciência de dados (ou, pelo menos, fornecer algumas orientações para futuras pesquisas e talvez responda a algumas de suas preocupações): http://datasciencemasters.org , ou no GitHub: https://github.com/datasciencemasters/go .


2
+1 Você precisa de muita experiência em engenharia para ser uma ciência de dados eficaz, mas não a obtém na escola. Use a escola para a teoria e use empregos para habilidades de engenharia.
Sean Owen

3
Gostei do seu "Um cientista de dados é alguém que é melhor em estatística do que qualquer engenheiro de software e melhor em engenharia de software do que qualquer estatístico".
Wabbit

Você poderia gentilmente responder a essa pergunta sobre Data Engineerorientação de carreira.
stom

@stom Por várias razões que não posso responder a sua pergunta, mas eu estou feliz de compartilhar com você as seguintes relevantes e IMO excelentes recursos : 1) medium.com/@rchang/... ; 2) medium.com/@rchang/… ; 3) medium.com/@rchang/… ; 4) medium.com/@richard534/… . Como você pode notar, os três primeiros links são para as postagens de uma série. Espero que isto ajude.
Aleksandr Blekh

9

A partir dos anúncios de emprego que eu vi, a resposta depende: existem trabalhos de natureza mais técnica (projetar projetos de big data, fazer algumas análises) ou exatamente o oposto (fazer análise, armazenamento etc., alguém é outro trabalho).

Então, eu diria que ALGUMAS habilidades de design de software são extremamente úteis, mas você não precisa da capacidade de criar um grande programa em C # / Java ou o que seja. Por que eu gosto de algumas habilidades de SW é simplesmente que seu código provavelmente parece muito melhor do que o código de alguém que nunca programou por uma questão de programação. Na maioria das vezes, o último código é muito difícil de entender / depurar para pessoas de fora. Além disso, às vezes sua análise precisa ser integrada a um programa maior, uma compreensão das necessidades dos programas certamente ajuda.


6

Absolutamente. Mantenha suas habilidades de software nítidas. Você pode fazer isso em um programa acadêmico se simplesmente implementar sozinho todos os algoritmos que aprender.

Boa seleção de cursos, entre. Considere conseguir um estágio também.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.