DEV Community

Discussion on: Succeeding at your First Developer Job

Collapse
 
saadaakash profile image
Saad

I'm not in my first year down the professional software development line, but I can surely recall & share the challenges I personally faced. Also, I've been mentoring a good number of Junior Developers too at my current & previous workplaces hence I'll add up other challenges (& how to tackle them), frequently observed while in the process of mentoring them.

  1. Don't ask too many questions Ask questions, a lot:
    Ask a lot of questions until you can translate exactly what you're assigned to do. Don't shy away & start coding based on mere assumptions. Ask your seniors or pairs, this will save a ton of work hours for the company too! Maybe a similar problem/feature has already been addressed/developed by the person sitting right next to you in the same/different project(s). Who knows?

  2. Just code what you're told to code Understand the why behind the code:
    As you mentioned @bhumi , "Code is just one of the things you do while working as a professional (i.e. paid) software developer". As the career takes off gradually, sometimes comprehending what a user/business expects to happen is way more effective than isolating yourself into coding implementations only. It saves a lot of time, ensures less negative feedback from code reviews & shortens feature change requests as well if you can picture the purpose & end user/feature that your code block intends to serve.

  3. Don't talk while in work Be social & open to career discussions:
    Participate in fruitful conversations with colleagues. Share your struggles, journey, and create a network. Participate local & global dev talks. Knowledge sharing sessions are one of the best way to keep yourself aligned with the best practices, latest tech trends and of course, to open yourself to professional benefits in near future.

  4. Don't spend too much time in what's done & dusted Be good at debugging & comfortable with legacy code base:
    Say, you're given a short time to familiarize with the product that you'll be working on. Spend some time playing around the project/product, find an interesting feature & explore how it was implemented. Knowing the architecture, data structure/pipeline & implementation steps by debugging is a must-to-do when you're given a task.