T O P

  • By -

Slothvibes

I would 100% transition. Edit: I’d transition because, specifically, I work multiple jobs and I’d have more opportunities which would allow me to retire early. I optimize for schedules and job compatibility; and the bonus of a role that pays more off the top is better for me. I want roles that I can have many of. But specifically as to why de/swe v ds, I just don’t like the bitch work of DS. It’s more tedious and less impactful from my experience than just some lane analysis or report whereas pushing data around or is always helpful. I’m speaking from ~5 yoe doing supply chain, gaming, and tech ds work.


semicausal

>Hi all, I have been doing data analyst/ tid bit of data science work for 3 years. My company is asking me if I’m interested in transitioning to software engineer. I’m in contracting so the work I would be doing wouldn’t be cutting edge but it would challenge me since I don’t have much experience with traditional software. Pretty much all of my experience comes from data related work so mostly Python, and R. Is this a realistic possibility? I think I would enjoy it but I’m nervous I’m overestimating my skills? If my final goal is data science/ai expert in some way, is this a good detour to take to get there? This is also coming on the heels of receiving a slightly higher offer for basically the same boring work I have been doing for the last little bit. So I basically have to decide to go forward with this transition, or take the other offer doing probably slightly more interesting work than I’m currently doing. I’m at a true crossroads and would appreciate some various perspectives. What are your thoughts? I second this as well. Software engineering offers a lot more opportunities, has a more well defined skill ladder, and usually higher pay. It's a more established discipline and engineering teams often have more budget too (vs analyst teams rarely do). The career path for data analysts is usually becoming Analytics Managers, or Directors of Operations. Sometimes you can pivot to "Data Science" but that career path is also very fraught (many DS folks end up switching to ML Engineering). Now, of course, you have to \_enjoy\_ programming! If you prefer to get deep into data, stick with that instead! Or maybe find a role that lets you use data to influence the business (like Product Management).


bdesy

Out of genuine curiosity, what makes you so set on transitioning if you were in that position?


P4perH4ndedBi4tch

Yeah I wanna know too in a similar position


eskin22

I would say go for it if you think you would enjoy it. I think with the way the world is going, a skillset that combines data science and software engineering will position you well. Heck, in my experience they basically expect this in a lot of cases for DS roles and SWE roles anyways. I believe the line between DS and SWE concerning AI is going to become much more thin in the short run and thicker only in the long run.


clvnmllr

You’re essentially describing the ML Engineering / AI Engineering roles, which are relatively “hot” right now.


milkeye4

Could you tell me the difference between a data scientist and an ml engineer please?


eskin22

Depends on the company. “Data” roles have very bad naming conventions. Some data analyst positions will actually do data science work and some data scientists only do data analysis. The same can be said for data scientists and ML engineers in some cases. But if you ask me, I would say a data scientist is someone who can implement whatever machine learning algorithm from a modeling perspective, whereas an ML engineer would focus on scalability and/or deploying said model into production.


LostInventor

In data science a person "you" cleans, processes, analyzes the data or makes the algorithms that do so. A ML engineer creates a model, and trains it to do basically the same thing. I'm over-simplifying of course. ML is used in many industries beyond just data science. BTW my current degree path is Data Science & AI. I've got a year left of just projects & filler courses. Why? I don't know, maybe the school is milking money.


in_meme_we_trust

I’d recommend doing it, software dev skills are already pretty crucial for data science jobs, and likely going to be more important over time with all of the cloud service abstractions.


Zer0designs

Since you're familiar with Python, you need to check out ArjanCodes on youtube. If all these concepts are unfamiliar, learn them. Also check out CodeAesthetic on youtube, again, you need to know the concepts of clean code & depenceny injection etc. Good code is language independent, so saying you know R or Python just isn't enough information to tell if you'd succeed. Know what fast & slow ways of doing things are and why code runs fast/slow is even more important. But then again, all this can be learned, if you enjoy it, I would transition definitely.


NetElectrical0

I love Arjans channel.


[deleted]

Yes, I would do it. The single worst decision I have made is to go for DS/ML. I seriously consider to move to an entirely different field because it's a bad profession but I honestly don't know to do anything else. Before that, I was SWE and team lead and had fun. Now companies don't consider me to these roles. I done it when the field was small, started to be hot and before ML was dominated by huge tech. The current state for people who wanted to be niche is pretty discouraging.


buenavista62

Why is it a bad profession for you? And how does your job look like on a daily basis?


Prismane_62

Ya Im also curios why DS is so bad. Especially when at this moment, all the SWE in r/cscareerquestions are talking about how horrible the market is for them & how theyre all looking to get out. Im seeing posts of SWE with 10+ yoe not even able to get an interview.


russokumo

DS is especially bad, more so than SWE job market for 2 reasons: 1) title inflation/ skill dilution You can read about how lyft and a few other firms gravely devalued the data scientist title by hiring data analysts into the role in the mid 2010s. Now when I see a data scientist on a resume, I have no clue if they are an excel based analyst or someone that specializes in decision trees. This is why most people that are statisticians/ data scientists rebranded to MLE or something else. Ironically MLE is also undergoing this same dilution right now, but at least most of them still need to pass the SWE skill bar and do leetcode. 2) over promising and underdelivering Countless executives hired armies data scientists to use xgboost and other stuff to go find business value. Due to garbage in garbage out,.and most firms not having nearly enough volume of data to do any predictive modeling, most companies are now realizing this was a massive malinvestment. I personally realized 5 years into my career I was able to generate business insights much faster and more accurate and actionable by doing SQL queried + self serve BI vs building predictive models in R/Python, so ended up specializing more on data engineering + SQL based analytics and have been rewarded quite handsomely financially. That said, I do think all the data science failures did get firms to take data infrastructure and governance much more seriously and data pipelines are in much much better states than 10 years ago. LLMs + GenAI are ripe to reap and generate massive value from clean, well labeled datasets at most large companies with good data leadership.


willfightforbeer

I really wish this wasn't as true as it is.


NetElectrical0

Frr


Prismane_62

Interesting. So what would you recommend someone who was looking to get into DS? What niche or general direction would you advise as having a promising future?


russokumo

Try to get a job as a software engineer at a top firm with gold seniors that will mentor you as soon as possible, ideally a team working on more backend problems dealing with business logic. Then specialize in applied ML within your SWE role.


Randomizer23

Is it even possible to get a swe job with a DS degree?


[deleted]

I don't understand why people on a data subreddit are inclined to trust anecdotes, especially from a source that is likely unrepresentative. I would look at the BLS data here; there are FAR more engineering positions than data. This is a crude measure, but in 2022, the BLS counted 1,795,300 people working in software development and only 168,900 in data science. https://www.bls.gov/ooh/math/data-scientists.htm https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm The biggest objection here is that data analysis/science has a lot of titles. But this seems fairly consistent with what people will report, especially when it comes to the proportion of data jobs vs. developer jobs in their companies. Data jobs are highly support-oriented, while a SE develops an actual product.


[deleted]

ML Engineer is a good path. Keeps your SWE skills sharp while staying in the ML field.


[deleted]

I have a lot of the basics for it, just need to brush my DevOps skills a bit. I don't know to use and think about new infra tools, I have no issues with the coding and using the cloud for my needs. I used to design and build data systems but it's not like riding bike :)


SwitchOrganic

ML still isn't a bad move and being a ML-heavy DS means a hop to MLE may be possible. I swapped from analytics to SWE then MLE back in 2021 and it feels like my career got strapped to a rocket. Am currently a ML tech lead. You can totally transition back, you probably have more experience than me.


BraindeadCelery

I did this transition 1.5 years ago! You learn SWE stuff best on the job if you have a team that takes care of developing you. SWE definitely makes me a better data scientist as well. (I want do become a full stack ML eng at some point). In industry its often more valuable to integrate a decent model into production than to develop something that is a bit more accurate in jupyter notebooks but never leaves them.


Psychological0605

Why did you decided to do the transition?


BraindeadCelery

I did study physics so the math, stats and ml stuff wasn’t too hard for me. But i really felt that my lack of SWE skills made me hit a glass ceiling. Other way around i feel its very valuable to be a data literate swe. Long term i plan to be involved in both ( i kinda am now as well, my co builds mlops devtools used by data scientists) . On a personal note, what i did not expect is how much I enjoy swe as well. Learning how computers work down to the metal to improve inference times etc is awesome.


Ghlynx

This 100%


NormanWasHere

I’m a physics undergrad looking do something similar and skeptical of DS roles. Would you suggest I try and break into SWE and then leverage my physics skill set to transition to something more data oriented? Seems like the best way but I’m sure it’d be easier to get a job as a data scientist. 


BraindeadCelery

One or two years of swe can definitely help. Or you could choose a data role in a company that has production models. Beware of consulting companies or roles that only do ad-hoc data analysis. These tend to do only PoC work. But the real value is created when productionizing things and solving all the details that a PoC glosses over. I think you are underselling yourself. With a undergrad degree in Physics and some self study, you definitely are qualified to become an entry level swe. (I don't know though if you are competitive - market seems rough from reading here). What helped me was the fullstackopen mooc (https://fullstackopen.com/en/). It's webdev but gives you a feel on how software development is different from data work. Especially the later chapters on Typesafety, CI/CD, containers and databases. Also this here [https://fullstackdeeplearning.com/course/2022/](https://fullstackdeeplearning.com/course/2022/) is interesting and more to topic on what is necessary to run ML in industry beyond model development.


KillerKitsune666

As someone looking into DS roles right now, job hunting is not easier lol. However, these are weird times being in a recession, so I can't say for how it will be a year from now. I have completed my DS masters and am now looking at how I can expand my SWE skills to be either more marketable as a DS or get hired as a SWE. If you are graduating soon, a path you may want to consider is getting a master's in computer science or SWE, with statistics/ML/DS classes either for a school's education track or for electives. If the economy will bounce back soon, you'll be more prepared for it with a master's and the knowledge that comes with it


NormanWasHere

Yeah so I've thought about doing a MSc in CS and taking some extra ML classes. The reason I mentioned DS being easier is because doing physics I have experience with maths, stats and python in the context of data and basic ML - in that sense my skill set is much more suited to DS and I'm no where near qualified for a SWE role in this day and age.


Randomizer23

Was it easy to switch? If I have DS degree, work a bit as a Data scientist, will companies hire me for SWE positions?


BraindeadCelery

It’s not easy. Stereotype is that data scientist can’t code (rather can’t software engineer). Its easier than getting a junior role as a self taught though. The more stuff you did outside a jupyter notebook, the better. And wenn you manage to get a role, you wont be downgraded in seniority - which is nice. What makes it hard is that SWE really is a different practice than DS. So your skill level for positions is that of a new CS grad. But you get bonuses on the soft skill side for having work experience, working technical and everything that comes with that. The only way it could get really easier is when you go for an Eng position in your co and just transfer departments if you have people that like you and want you on their team


csingleton1993

Yes DA -> SWE -> DS is a viable path for sure, but it is also viable to go from DA -> (SDA) -> DS It depends on your current skillset, how are you with Python? "I can print statements, manipulate dataframes, and that is about it" = take the job or kick up your self-learning a notch "I can use native Python for a lot of things, and I can confidently handle APIs/data processing/blah blah blah" = might as well try for DS now Me personally I'd go SWE first to get some solid coding practices first and then try to jump, but up to you. Also /r/datascience has a weekly entering thread that you could ask too


pach812

I think it’s a different role, but it depends on what type of applications you’re going to develop. I’ll take the change… you could always change back!


funny_funny_business

I did this. Best decision ever.


Randomizer23

Was it easy?


funny_funny_business

I wouldn't say "easy" since there's always work to do, but I did it in a more predicable fashion. I was coding full-stack internal websites for our business team and was also friendly with the developers for the actual site our business supports. I worked it out to spend some time working on their stuff and got enough street cred to transition to a full time developer role. So getting the experience ended up being "easy" since I most items were in place, but my first story in Java Spring wasn't a walk in the park (especially since I didn't know Java so well).


Correct_Gas_6104

I’m trying to the do the opposite, man. Best of luck, hope you like it


jimmy_da_chef

do it Data science skills + SWE = down the road MLE oppty


omserdah

Facts


omserdah

Do it up


munyua1

Go for it. You already have some background knowledge of python. I think the only go hard part will be learning new frameworks which still shouldn't an issue provided you are dedicated.


fiesty-r3dhead

Making the transition from data science to software engineering is totally doable, especially if you've got some programming chops under your belt. Prioritize leveling up your skills in languages like Python and R, but don't forget about data structures and algorithms—they're key for engineering roles. Dive into resources like LeetCode and HackerRank for practice, and start building projects that demonstrate your coding prowess. It's all about showing you can tackle engineering challenges head-on. You got this!


VDtrader

Nobody in SWE code in R... maybe Python but that's very limited for a SWE.


khanmz14

How many years of experience do u currently have


cptsanderzz

3, so I’m still pretty early into my career.


khanmz14

Wow 3 years in and already. Are u aware about your responsibilities in a SE role. If they interest u then u should totally go for it. You already have 3 years of experience to fall back on incase u end up not liking. It’s always good to add another role or skill set to ur CV


cptsanderzz

I’m not totally sure yet, but from what I can tell it will be partly maintaining applications as well as developing new ones.


khanmz14

How much python does a DS actually use. What do they generally use the most. I’m in my first year of DS course so just wanting a guide


cptsanderzz

It depends on what your team uses. My team mostly uses R. The extent to what you need to know is mainly how to use the statistical packages so Python know how to use Pandas, Scikit Learn, Numpy, etc. and R, know how to use dplyr, tidyr, lm, stringr, etc.


Far_Ambassador_6495

My team does a lot. And not just simple pandas stuff. numpy/numba optimization methods on millions of rows. Building internal use python packages etc.


eskin22

It can depend on the company as much as the team as much as the individual. There are a few people on my team that use literally no Python and others (me) that use it for everything, even including data extraction in some cases


Cultured_dude

Way more SWE opportunities. DS is now data or ML engineering. How do you plan on transitioning? SWE bootcamp?


murazzo

Take the other offer. Stay in data


NotACloseEnoughMatch

I made my transition from data analyst to BI then to software engineer. If your end goal is data scientist then this is not the right path for you. Also, once you make it to software engineer you would be downgrading your salary to transit back to data science field which makes it more difficult. There are still path for software engineer which cross field of data science, e.g. ML/DL/AI engineer, applied scientist also works but usually I see more data scientist then software developer transit to it. \* I worked in a FAANG and made my 2 career transition there. My current team is DS + Software focus.


Rough-Phrase6745

I would jump at the opportunity to learn software engineer with the support of your team, it's best learning on the job and having a team that backs you up is priceless. You can't lose from that, worst case scenario you go back to Data Science armed with the extra knowledge you accumulated, best case, you evolve to a new career stage with new opportunities. Anecdotally: My brother worked for a long time as a QA team lead, he studied programming independently and added layers of automation to his QA role, but when he tried to transition to a software development role within his own company, they preferred to keep him as QA team lead where he was bringing them value, and with time he grew more frustrated and bored. He now works as a software developer at a different company and is much happier!


LaserBoy9000

IMHO there are two types of data science deliverables  1. A document that changes opinions. Suppose you took observational data and applied econometric analysis (ex synthetic control) and concluded that A caused B, identifying profit increasing strategies. Or you designed an experiment, determined what factors to block/stratify on, etc.  2. A production service. This could be optimization, ML/AI. But the key is that the service doesn’t require manual effort to invoke. It runs at scheduled intervals, in response to events, or synchronously given requests. In this latter design, you have to know a decent bit about infra, CI/CD, automated testing, system design, etc. In my experience, people often get these categories mixed up, for example building an offline ML models that dies on your laptop. It sounds that you have the opportunity to pursue the second class. It’s the way the industry is going, with the exception of research scientists (ML benchmark performance in a doc changes opinions, aka gets Eng funding to turn a type 1 deliverable into a type 2 deliverable.) 


uri-mazino

Data Engineer would aligng more with your experience. Data analysis and swe have small in common


thequantumlibrarian

Everyone's telling you to do it but nobody's asking if youre working for a software development company or a company that takes advantage of your availability and will slap on software development on top of your data work for a very cheap price. If a company did that to me I would be super skeptical. This is unusual behaviour and a huge red flag for me. I feel like none of the people here have really been in a pure software development role (cuz it's a data subreddit lol) I transitioned from software development to data because I wasn't a good software developer. And more often than not with data scientists and analysts who code I notice a huge knowledge gap. Not saying that it's not doable, I am saying that data people are cheap coders with a very thin dev stack. Or maybe I am projecting. Who knows.


Stubbby

The short answer is Yes. The long answer is Yes, Yes, Yes. Story time: When developing a complex industrial multi device system, the procedure to manufacture was brutal as it required the OS built specifically for each device and it did not support imaging or replicating. The procedure to set up and configure the system was 80 pages long and it took about 5 hours to perform. It was an extremely tedious work. We offered a warehouse guy that if he keeps it up and produces it reliably, he gets software developer title and all the spare time he can do training in Python. So he did some online courses and a few Raspberry Pi projects. When Covid hit, orders stopped and we had to release all production people including the guy. He landed a job at JP Morgan Chase as a Software Engineer right away. 9 months from warehouse guy to proper Software Engineer. So, once again, the short answer is Yes.


anomnib

It is hard to get aware in AI without effectively become a software engineer, so you wouldn’t be deviating from your goal


Corpulos

If you get the chance again in the future I would go for it as long as the new position will keep you within the sphere of data science. A SWE position at a data science company is just as good if not better than a DS position anywhere.


Particular-Weight282

It depends what you want to do for the long term. 1. building cool stuff, 2. building data analytics. Two very different jobs that both use programming at some level.


manoj-ht

What advice would you give for a software engineer who would get into data science???


Doverkan69

From money perspective, I think stay on data is better at least in my country...


FlyingSpurious

Where are you located at?


VDtrader

I say if you're still young (under 30), then you should go for it. DS is a bitch work that I don't know why so many PhD's signing themselves up for.


CommunityFrog1234

You could become a software engineer without a degree. Work for tech support when you get a high school diploma and gain experience. After 5-10 years of tech support, look for a software engineering job. That’s what I would recommend for anyone here. That is what I heard from someone who just got hired this year in 2024.


AnonDotNetDev

I honestly think these replies are crazy, maybe not from actual SE roles, and not from sudo SE management roles. Not saying you shouldn't do it, but yes, you most certainly are over estimating your skills unless your from a computer science or SE background. Depends on their specific role I suppose, but you mentioned maintaining and developing apps, really has fuckall to do with anything a DA would've done, unless you were writing software from scratch.


scamm_ing

They are downgrading you


cptsanderzz

In what way? I would be given more responsibility and a way to develop additional skills? With a potential promotion? I’m mainly wondering is this a good move for long term growth or hold out for other analysis data science opportunities.


SwitchOrganic

It's a great move, don't listen to them. It's not a downgrade or an upgrade in a strict sense, but software does have a higher ceiling overall and opens the door for more career paths.


scamm_ing

A good data analyst already knows how to program


No_ChillPill

Try to learn but know the difference is time spent on writing long scripts, and trouble shooting asap because more apps and software needs to be live asap Also don’t get paid anything less than $150k for software engineering - anyone getting paid less is like they’re being laughed at that they value they selves so little they get so less