Answer by Dan Croak:
I'll lay out the trails that I would want my future teammates to have travelled. This isn't a short answer, but it also isn't a short journey. Becoming a great developer takes time and practice.
Use the freeto track your progress in the following topics:
- Code Review
- Ruby on Rails
The app gives you some simple tasks to self-assess your ability to perform tasks you'll need every day on the job as a Rails developer.
For example, the Git topic says "You should be able to:"
- Add a file to staging
- Unstage a file
- Check status
- View a diff
If you aren't able to perform those tasks, the app curates related resources to train yourself. It often points to free documentation.
Your goal is to able to perform all of the "Beginner" and "Intermediate" tasks.
If you get stuck at any point, useto get expert help via private chat room. Or, if you want to really dedicate yourself via in-person training, apply to (9 weeks), (10 weeks), or (6 months).
When you're able to perform all of the "Beginner" and "Intermediate" tasks in the Learn Trails, I suggest applying for an apprenticeship such asin Boston, San Francisco, Stockholm, Philadelphia, Raleigh, Denver, or New York City. It is a three month program paying you $500/week in which you have a mentor with whom you work one-on-one with every day on the apps that they work on.
It's expected that you only apply toif you want to work at , a consultancy, after the program.
In my opinion, there is no better way to get from intermediate to advanced levels that to be mentored one-on-one for an extended period of time with someone more experienced than you.
After some combination of training yourself using the Learn Trails, going through a training program like, , or , and going through a mentoring program like , you'll be qualified for a full-time developer job paying somewhere in the $75,000-$90,000 range, depending on the city, your work, and the fit at the employer.
Consultancies tend to be good for people who care about quality, craftsmanship, self-improvement, and variety of projects.
Startups tend to be good for people who care about focusing on one product, high energy environments, and the unexpected.
Hope that's helpful!