Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: What does the day to day look like for software engineers working on AI
12 points by aicurious on March 7, 2024 | hide | past | favorite | 8 comments
I'm a Ruby engineer with a fair bit of experience under my belt as a software developer. I'm looking for a new challenge and as I'm looking at the market I'm noticing that the Ruby scene doesn't currently have all that many jobs available, but also that (obviously) AI is super hot right now.

A lot of those jobs are about working on actual models, ML, training... a lot of things I've had virtually no exposure to.

So I'm curious for those working in this space. How did you pick this up? How reasonable would it be to not only change languages (Ruby to Python presumably) but also change the type of code that you write?

What does your day to day look like?

Looking forward to learning more!



I'd recommend moving to development that interfaces with ML instead of moving to being an ML practitioner. You have much faster feedback cycles, your work is predictable (engineering, not science), and you don't feel the pressure of never reading enough papers.

To do that you only need to understand the fundamentals of tensors, some basic knowledge on what the big no-nos are within ML development so you can course correct your peers if they break them, and either focus on the operations side of things or deployment. In both cases, having a knack for optimizing bottlenecks will be very helpful since they will be present during both training and inference.


As a designer/developer with a lot of expertise in UX and front-end technologies, I would love to go this route. Do you have any suggestions on where to start in terms of tutorials, tech, books, etc?


Read Deep Learning with Python [1]. It's ok not to understand everything, but doing the labs will be invaluable.

That book should set you up with the fundamentals. Pytorch is the defacto standard right now for training; during deployment you will use whatever your deployment setup allows (e.g. embedded devices typically have their own inference frameworks).

Python is the lingua franca for anything in machine learning, but other languages are used where necessary for performance or for ecosystem benefits.

[1]: https://www.manning.com/books/deep-learning-with-python


got any good resources you can share?


Data cleaning, studying data, looking for patterns, trying to figure out why the A/B test failed despite promising results offline. Finding / debugging annoying bugs that caused that failure. Working with infra to operationalize some new way of doing inference in production. Wondering why certain features take so long to compute. Trying to scale up to dozens, hundreds, thousands of requests per second. Studying p99.

Oh and occasionally you train a model on that data. But usually that's not the hard part. That's just the tip of a very very large pyramid with lots of underpinnings.


Writing code, reviewing code, meetings - it's a programming job. Probably think about data a bit differently than other jobs, need understanding of the models and the domain you work in.

> How reasonable would it be to not only change languages (Ruby to Python presumably) but also change the type of code that you write?

Tough because of the state of the market. People are finding it hard to get a job, any job, and if you try to switch, you'll be play that game on ever-harder mode.


I'd like to know the same. I am also a rails/JS dev who is studying to move to AI side. But it honestly does not look that interesting


copy paste code change button color write git commit nap pod smoothie meetings go home on the bus




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: