> On 19 Apr 2024, at 13:55, Paul Bennett-Freeman <
clic...@gmail.com> wrote:
>
> > I'm currently working on building a portfolio, but is there anything I should focus on in particular?
>
> Since you've changed careers, is there anything you could build the plays on that? Something you can spin a narrative around of "As a teacher, I always wanted to do X, and so I built this tool that does it."
>
> Something like "Every term, I'd need to log on to the school web site and copy a pupils grades one by one into a spreadsheet, so I built a web scraper that does that automatically"
Agreed, Patrick McKenzie (patio11) once said "My favourite heuristic for SaaS apps still works: there is a good market anywhere someone mails an Excel spreadsheet and they mail it back". It could also be a good heuristic for finding interesting problems to solve to stand out at interview. When you solve the problems it helps to be able to talk about why you made the decisions you made too, rather than just "everyone does". Why did you pick Postgres over MySQL? Why isn't SQLite suitable for most web apps despite being fashionable again? What do you like about Minitest vs Rspec? You don't have to have an answer for everything as you're just starting out, but I think it's worth thinking through as you go.
> From a more personal perspective, and definitely more controversial, so take this as one person's option: Frontend in Rails (Turbo and Hotwire) is a hot mess and very few companies actually use it.
I wouldn't necessarily agree there. Popularity isn't a sign of quality. See PHP, The Javascript tooling ecosystem, Mongo DB, McDonalds etc. There are companies using Turbo and Hotwire and doing so successfully. Not as many as React for sure.
Personal experience, I'd say that using React was the single biggest mistake made in our companies history, it's hindered quality and speed of development as the company has aged. I wish the people who had made the decision years ago had stuck with server-rendered content with something like Stimulus for front end behaviour.
> Learning some React, and building against APIs you've written, or other people's APIs is a much more transferable skill set. I'd recommend Noel Rappin's Modern Front-End Development for Rails which covers all bases by including Turbo, Stimulus, React, and TypeScript. That has a more balanced approach than a random person on the internet screaming "Hotwire sucks!" ;)
This is a reasonable approach. Knowing some several technologies may well help as a junior developer, being able to talk about the differences and why you might choose one over the other would be helpful too.
I'm going to hijack this email to respond to the original :)
> On Thu, 18 Apr 2024 at 12:47, DAZ <
daz...@gmail.com> wrote:
> >
> > I know a lot of you on here are already working as Rails devs - does anybody have any tips about what the best things I should be doing? I'm currently working on building a portfolio, but is there anything I should focus on in particular? And any tips about the best way to find Rails vacancies or opportunities?
It depends what job you want to go for and what you mean by portfolio. If you're going for a job at an agency then a portfolio of sites you've made might be useful. However, though some people can thrive at agencies they have some significant downsides, especially for people wanting to learn and grow.
As someone who has hired people a big part of what I'm looking for is you to show me that you can think, decide, plan and do. Finding situations where you have thought through a problem, decided what the right solution was, planned how to do it, and then done the work well. Creating n Rails apps with Postgres and Sidekiq that take form data and store it in a database works a small number of times depending on the specifics of the problem solved each time, but doesn't scale.
Things other than a web app that might impress could be things like:
- I did some data analysis using Jupyter Labs/notebooks, Python was a good choice here because…
- I gathered some data using a Raspberry Pi or other device, here's the Ruby code, these are the problems I solved…
- I experimented with benchmarking my Rails apps frontend and/or backend to improve performance, here's what I learned…
Some people with 20 years experience have the same year of experience repeated, even though you're new you should try to show that you've not just got the same experience over and over again.
No-one is expecting you to have rich and varied experience at this stage, but have a think about these as a way to stand out and not fall into the trap of doing the same thing over and over.
Will.