The Junior Developer Survival Guide
By: The Educative Team
Tags: Work, Advice, Programming, Software Development, Career

Pillar One: Professionalism

Technical skills will only get you so far in real-world business. Even if you were top of your class, you may not be prepared for the rigor of the professional world. Professionalism is key to surviving as a junior developer, no matter what your long-term goals may be. Professionalism can roughly be defined as a set of behaviors, attitudes, and habits that characterize a professional person and align them with their company’s values. Let’s break down professionalism as a junior developer into five key points.

1. I ask questions when I don’t understand something

It’s not easy to admit when you don’t know something. It’s especially challenging to know how to ask the right questions when you’re in need. But amateurs or beginners who pretend to know all the answers fall back on old habits, get left behind, or even end up looking foolish. Professionalism means being honest about your work, your knowledge, and your eagerness to improve. Asking questions is essential to career success.

Whether or not you see them now, inevitably there are gaps in your knowledge when you’re starting out. Asking questions empowers you to continue learning and become more specialized in what your company needs.

If you get stumped or confused, you may fear that your coworkers will think you dumb or undereducated. But in reality, people want to help others. On top of that, asking questions shows you can work well in your team.

While it’s true that there are no stupid questions, there are better and worse ways to ask questions. Learning how to ask good questions will save you time and prevent frustration.

Start by asking:

Have I understood the code to the best of my ability?

Have I checked with reliable sources like StackOverflow?

Have I used a debugger program to help me with this problem?

If you’ve tried your best to solve the problem on your own, it’s time to ask for help. The best way to ask questions is to contextualize your question and explain your process for the person you are asking. Point to exactly where you went awry, what you think went wrong, and what you did to fix it. For a more detailed breakdown of how to ask good questions about your code, take a look at this article.

2. I seek mentorship with experienced developers

Having a support system will not only make you a better worker, it will make you a more fulfilled person as well. Having people at your side for aid, advice, or even just a listening ear can transform your work environment. Professional mentorship relationships create a space for you to engage with professional expertise in your field.

You may not be assigned a mentor like you were in college, so it’s important to seek out mentorship from someone who’s invested in your success. This doesn’t have to be a formal relationship — even just regular chats with a more seasoned developer is a great place to start. Since you are working for the same company, everything you learn from them will be rooted in the company’s codebase and culture.

If you’re unsure how to develop a mentorship relationship, start just by taking an interest in other people’s work to build connections. Another easy way to seek out mentorship is to share your milestones. Involve other people in your progress and they will want to see you succeed.

Pro tip: We recommend finding a mentor who has 5–10 years more experience than you — so that they have valuable insight without being directly in competition with your work.

3. I ask for feedback on everything I do

Professionalism means having the right attitude toward professional growth. Your goal as a junior developer is not to be perfect — your goal is to learn your craft. This means you’ll make mistakes along the way. Just as it’s important to ask questions, it’s also important to ask directly for feedback, especially if your company doesn’t have a system in place for technical reviews. Seeking out opportunities for feedback is an action-oriented way to demonstrate professionalism.

You shouldn’t just ask for feedback on the technical aspects of your job but also on your day-to-day habits and practices. Getting feedback about your role in the workplace extends to how you fit in with your coworkers, how you communicate, and how you organize your time.

The key to asking for constructive criticism is to be prepared for honesty. Don’t mistake feedback just as an opportunity to garner praise. Instead, think about asking questions like:

What could I do differently that would add value to our team?

What would you like me to stop doing?

What would you like me to start doing?

4. I stay organized with my work and time

Organization is key to professionalism in every field, especially software development! Those who can’t stay on top of their work or time are a red flag to employers and managers. Let’s discuss two easy ways that you can stay organized as a junior developer.

Take notes: On the job, you’ll be learning every day, correcting mistakes, and hearing terminology you might not know. Taking notes is a great way of ensuring that this new knowledge doesn’t get lost. From documenting questions you may have, to recapping conversations with mentors, to noting down a word you didn’t know — taking notes will empower you and your career in the long run. There’s no right way to take notes and it absolutely does not have to be a formal system. Even just a small notebook to scribble down your thoughts or questions is enough.

On the job, you’ll be learning every day, correcting mistakes, and hearing terminology you might not know. Taking notes is a great way of ensuring that this new knowledge doesn’t get lost. From documenting questions you may have, to recapping conversations with mentors, to noting down a word you didn’t know — taking notes will empower you and your career in the long run. There’s no right way to take notes and it absolutely does not have to be a formal system. Even just a small notebook to scribble down your thoughts or questions is enough. Practice time management actively: Time management is notoriously challenging for developers of all levels, so start working on this skill set now. The key to time management is effective communication. State your needs early on and never make promises you cannot keep. Since you’re still in the early days of your career, consider tracking your work strategically for organized and action-oriented data. Check out our article here for more tips on that.

5. I maintain healthy work boundaries

Professionalism means setting clear boundaries about your time, work ethic, and commitment. Setting healthy work boundaries means taking responsibility for your actions and attitudes, and taking no responsibility for the actions or miscalculations of others. Being able to negotiate the difference is a skill that comes with time and practice.

As a junior developer, you may not yet know where your work boundaries are — that’s OK. The key is to communicate and pay attention to your emotions as things arise. Here are a few tips on setting healthy work boundaries.