I love everything logical, Maths and language related and have always had a love of programming. I used to dabble in Basic when I was younger, taught myself a bit of HTML and am now absolutely loving Python and am starting to make useful (to me) projects.
My question is that I've been getting better at Python and would love a starting job in the industry..I haven't really an eye for design so I was thinking of working doing back end stuff...when should I apply for a position?
What sort of projects should I create to form a portfolio.
Going from nowhere to somewhere is often confusing, but if any of you good natured people can offer pointers, that'd be much appreciated.
Thanking you in advance.
James
Some jobs offer a full-time training program at the beginning, and some training programs offer a job guarantee at the end.
Often all you need for those is just enough programming experience to be confident that you like it long-term. So you could probably apply right now.
Other beginner jobs require a relevant degree of equivalent. It's hard to tell when you're ready for those if you're going by self-study (hard for me and for recruiters). It also depends on how pressed for developers the companies in your area are.
Not much to lose by applying though, other than some time, which will be educative.
To personally get some feeling of how you compare to others, try to not program too much in isolation. Read some code or libraries made by others. See if you can 1) understand what's going on and 2) if you'd have been able to come up with that. No need to be 100% on either, but it gives an idea.
You could also post a piece of your more complex code somewhere to ask for feedback. codereview.stackexchange.com is made for that although I don't know how beginner friendly it is. On here is very friendly which is nice, but also bad if you want your code to be criticized.
Finally note that 'tinkering' is a great way to get started and a useful skill at all levels, but it's often not enough to be productive working on a big project. There's more thought-out design, there's conventions and best practises to follow, quickly understanding code by other people, teamwork... Of course you'll also learn in your first months, no need to be an expert initially.
Ramiro Berrelleza
Co-founder & CEO at Okteto
If you've been dabbling for a bit, and have learned enough to be able to build a simple web service or app, I'd start applying now. There's really nothing to lose. Worst case, the recruiters will look at your portfolio, will think you're too junior, and won't call you back. Best case, you'll get an interview and a job offer! Don't be afraid to apply for a position, most companies worth working for won't put you on a "blacklist" or something like that.
When looking at a candidate's portfolio (a github account is more than enough, you don't need something fancier). I always look for finished things. Libraries, services, websites (this is very oriented to back end development). I don't care for the complexity, or how unique the solution is, but I like to see developers who finish what they start. Focus on things you're curious on, tech you want to learn, or just to solve problems you yourself have (e.g. I once wrote a web service to tell me when my next bus was due).