Hiring developers is a famously non-linear problem. Once you have a job at a notable company, it seems recruiters constantly beat down your door. But how do you get started?
This is the advice I often provide when asked this question.
1. Open source your work
Put side projects up on Github or another platform. Even if they seem basic, some code to review is better than no code. This is also the case if you work for a company and can't share your day-to-day work publicly. Employers want to see examples of your work. The best interviews do not involve whiteboard questions and cultural hypotheticals; they are real-world discussions about code, architecture decisions, and so on. If you can get to the point where your interviews are about your actual work, you've won. This mirrors what a real-life developer does all day long.
2. Have a personal site
You're a developer, you should be able to configure a personal site that comes up first when a company Googles your name. Use a static site generator like Jekyll or even SquareSpace if you're feeling lazy, but have something. Have an up-to-date About page that mirrors what you're saying in your cover letters and resume. And write at least a few posts about what you're learning, no matter where you are in your journey.
3. Go to meetups
There are annual Django conferences in the US, Europe, Australia, and now Africa. There are also local Django meetups in dozens of major cities worldwide.
Volunteer to give a talk or just attend. You'll quickly find the community of Django employers and contributors is quite small.
4. Contribute to Django
All open-source projects rely on contributors, including Django and Django REST Framework. There are many open tickets that you can tackle, some complex but often small typos in the documentation or minor things that simply need a little time and care. Tackle something on the easier side, submit your first pull request, and go from there. If you are looking for a Django job and can talk about actually contributing to Django itself, that puts you top of the queue in my book, regardless of how far along you are in your programming career.
5. Believe in yourself
This is a big one. The technical interviewing process is grueling and demoralizing for almost everyone. Try not to let "imposter syndrome" overwhelm you in the process. Everyone has their weak spots, even the creators of Django itself! The important thing is to be honest about what you know and able to effectively ask for help, in the interview and on the job. There are a number of good resources available from the Django forum to the django-users Google group for asking questions.
That's my top five picks. Remember that interviewing, like coding, is a learned skill. It will take time to improve in interviews but in the meantime, stay active in the community and you will find the right job. Good luck!
Top comments (3)
Thanks William for sharing your thoughts. I’ve been working through your django for beginners book!
I think I’ll definitely be looking at some open tickets, great way to contribute and be involved.
Awesome! Glad you like the book. And definitely looking at some tickets is one of the best ones to become involved and build up your profile :)
Thanks, William is very important this kind of tips.