Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Advice going from graduate to senior developer

  • 06-08-2018 6:26pm
    #1
    Registered Users, Registered Users 2 Posts: 705 ✭✭✭


    Just looking for some advice I just graduated and hired as an associate developer. I wanted advice on how to go from associate skill level to the level of a senior developer.
    I don't mean pay or promotion I just want to know how to increase my skills and common mistakes that any of you may have learned that I can avoid.


Comments

  • Registered Users, Registered Users 2 Posts: 7,157 ✭✭✭srsly78


    Just work for a few years, nothing else is required.


  • Registered Users, Registered Users 2 Posts: 2,300 ✭✭✭PixelTrawler


    Try not to avoid mistakes. Great learning with mistakes. Im 17 years at development. Ive made thousands of them :)


  • Registered Users, Registered Users 2 Posts: 2,228 ✭✭✭xxyyzz


    It is something that will happen naturally after a number of years experience. I would say though, reading other people's code is a very good thing. If you work somewhere that does code reviews, maybe ask some of the senior devs if you can be included in their pull requests just to get a feel for what they are doing. All developers should probably do this really. Another thing that can be hard to do as a junior developer is to take a step back from the code when you are given a problem to solve. The tendency is to code your way to a solution but try to take a step back and examine the problem in a more abstract manner. When you do implement your solution try to make it generic if it seems like it might be useful in other scenarios. Little things like that will stand to you as you gain experience throughout your career.


  • Registered Users, Registered Users 2 Posts: 1,298 ✭✭✭off.the.walls


    Always be learning! Don't limit yourself to frontend backend dev ops etc try to get a finger into as many technological pies as you can, I started out as a FE Angular 1.X developer, during that time using JS I learned Typescript. Opened me up to strongly typed languages, then I started working with NodeJS, got me into backend technologies, that led me to learning MongoDB and using databases in my applications, after that I was led into learning docker because I wanted to learn how to deploy NodeJS apps. So its just going to be an accumulation of knowledge over time. I'm 4 years in dev now and I'm still doing courses on Udemy, and going to talks, you will always learn something new. But simple advice, Do not limit yourself in what you want to learn. The more you know the more you can offer guidance and advice to junior developers and thats what will make you a (senior) developer.


  • Registered Users, Registered Users 2 Posts: 1,815 ✭✭✭imitation


    srsly78 wrote: »
    Just work for a few years, nothing else is required.

    Not quite true. I know being a developer is basically being challenged all the time, but it's still worth pushing yourself all the time, take on challenges and learn new things, don't get stuck doing the same old same old.

    I think a senior developer would need to focus o people skills more too as you would probably be leading a few people as well as possibly dealing with the business/customers more but that all depends on the job I guess.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 7,518 ✭✭✭matrim


    Personally I think that one of the things that separates a senior developer is taking ownership of things. That can be anything from a project, a design, or even like @PixelTrawler said a mistake.

    You can be a great developer but if all you do is sit back and wait to be given things to do then you won't be senior. You need to have an interest in your stack, code (functionally and quality wise) and tools. If something isn't working about one of them, take time to try figure it out, propose a solution and work to get that implemented.


  • Registered Users, Registered Users 2 Posts: 6,286 ✭✭✭Talisman


    Software development is a journey of discovery. Always be prepared to do some research into concepts, tools, techniques, languages used in particular problem spaces.

    Read other people's code especially that written in languages which you are not familiar with - it'll broaden you horizons and give you insights into different ways of solving problems.

    Don't just focus on just shipping code - writing software is only one possible way to solve a problem. Developing software can be intellectually challenging and result in a complex solution to a problem when an alternative solution is often possible.

    Write comprehensible code. In my head I have had words with my younger self along the lines of "What the F*ck were you thinking writing this ****?". Code comprehension is a major factor in enabling a person (including your future self) to adapt your code with a degree of confidence. Whole products have been dropped because the team of developers don't understand or don't have the confidence in the codebase to adapt it.

    Test your code - if for no other reason then do it because the person who will need to touch the code afterwards will be grateful to you. The tests will show the intentions behind your code - don't make them have to think in order to comprehend your code.

    Software is designed in the mind - think about the problem before you dive into coding. Coding is the easy part, the greatest effort is required to understand the problem so you can develop a solution that will stand the test of time! This is difficult for people who think developers are not working unless they are hammering a keyboard.

    Learn the ins and outs of whatever stack your code is required to run on. If you know how the layer above your code works you can tailor your code to make it more accessible. If you know how the layer below your code works you can tailor your code to enhance it's performance.


  • Registered Users, Registered Users 2 Posts: 2,655 ✭✭✭draiochtanois


    This post has been deleted.


  • Registered Users, Registered Users 2 Posts: 705 ✭✭✭cintec


    Thanks for the advice guys I have definitely taken it onboard I guess it's not something you can rush.
    I'm currently allotting at least 1 hour outside of work a day for extra studying which I spend reading or completing Udemy courses.


  • Administrators Posts: 54,420 Admin ✭✭✭✭✭awec


    matrim wrote: »
    Personally I think that one of the things that separates a senior developer is taking ownership of things. That can be anything from a project, a design, or even like @PixelTrawler said a mistake.

    You can be a great developer but if all you do is sit back and wait to be given things to do then you won't be senior. You need to have an interest in your stack, code (functionally and quality wise) and tools. If something isn't working about one of them, take time to try figure it out, propose a solution and work to get that implemented.

    This is it really.

    Junior devs are code monkeys, give them specs and have them go convert that to code. Senior devs look at the bigger picture, they design solutions and they solve problems. They may implement their solutions, or they could oversee junior devs implementing the solution.

    Of course the definition of "senior" varies wildly depending on the company, but in general the higher up you go the less time each day you'll spend writing code.

    TBH I don't think knowing a certain language or framework in greater detail makes much difference, it's more abstract than that.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 1,465 ✭✭✭Anesthetize


    matrim wrote: »
    Personally I think that one of the things that separates a senior developer is taking ownership of things. That can be anything from a project, a design, or even like @PixelTrawler said a mistake.

    You can be a great developer but if all you do is sit back and wait to be given things to do then you won't be senior. You need to have an interest in your stack, code (functionally and quality wise) and tools. If something isn't working about one of them, take time to try figure it out, propose a solution and work to get that implemented.
    I agree with taking ownership of things. Showing leadership and initiative is important for becoming a senior developer. Try to put yourself in a senior developer's shoes and think like a senior as well.

    Innovation is also important. Research new technologies and tools which can improve the quality of your product and improve your processes.

    Also if you're working for a large company, make yourself well known outside of your team to other teams and management. Avoid just keeping to your team, keeping your head down, and doing whatever work is assigned to you. Good ways to do this are giving support to other teams on any issues that you can help them with, demoing new functionality to management, or temporarily standing in as scrum master (if you're in an agile team).


Advertisement