Junior Developer Advice
I was recently asked about what I thought about code bootcamps, and I’m not sure that I trust bootcamps…I would much rather see this from a junior candidate:
• A well designed website that describes you, your background as well as any iOS projects that you’ve worked on
• Think of an idea for an iOS app and create a project for it.
• The project doesn’t have to be anything special, but does need to have a professional polish to it. Use a professional prototyping tool like Figma/Sketch/AdobeXd to document your designs. Use a professional graphics program like Illustrator/Inkscape to create images.
• Provide some documentation of how you designed & developed the project over time. This could be mutiple pages or a series of blog posts
• The documentation should cover both User Experience & UI and should highlight any user experience design decisions that were made
• The documentation should also describe any architectural decisions that were made.
• Every project doesn’t go exactly as planned so describe in detail any technical challenges that you faced and what steps you took to address them.
• The project should be under Git source control. I want to see the commits as well as the commit messages.
I would suggest investing some time to perform these steps and see how it goes before investing time & money into a bootcamp. Software Development isn’t for everybody, if you get discouraged and find that you hate solving problems, you should probably find another field because like 90% of a developers’ time is finding and fixing things that go wrong. If someone sent me a link to their project page, setup as I described above, I could determine…
• Can they complete a project? If you couldn’t perform all of the steps I described above then maybe this isn’t for them.
• Do they think about how the application will be used?
• Are they comfortable with modern design software?
• Can they communicate? Do they need to work on grammar / spelling?
• What does their code look like? Is it a mess, or is it clean? Is the code of fair complexity or is it just a few files of mostly boiler plate code?
• What do their github commit messages look like? Too much information or not enough?
• What big technical/architectural hurdles did they encounter? Did they address them, or just let them remain unresolved? Did they understand the issues before doing research on a solution to the issues? How did they perform research? Did they use stackoverflow, a slack channel, Apple documentation, etc.