Live data from Hacker News

On Being a Junior Developer

mattsencenbaugh.com

41–50 of 73 posts

Re: On Being a Junior Developer

#41
post #39
post #38

I'm also a 'Junior Developer'(around 2yr) and am currently in the phase where I have started to see the faults in the systems my seniors design. There's a module that's driving me nuts, and I'm still pondering on how to tell the senior developer(who wrote it) that it's crap, over engineered and too specific. The module works to an extent, but I can see problems up ahead if the module doesn't get fixed or an alternati…

This all depends on where you're from. US is easier for Canadians, UK easier for Australians, for example. For non-commonwealth/non-EU residents, the UK has gotten very difficult since 2008 for people who are unable to get an employer sponsored visa. Even to the point of doing away with both the post-study visa and the Tier 1 general. UK salaries also can vary drastically depending on where you live (and not necessar…

I'm from Slovenia, EU resident.

Re: On Being a Junior Developer

#42
post #41
post #39

Earlier quoted context omitted.

This all depends on where you're from. US is easier for Canadians, UK easier for Australians, for example. For non-commonwealth/non-EU residents, the UK has gotten very difficult since 2008 for people who are unable to get an employer sponsored visa. Even to the point of doing away with both the post-study visa and the Tier 1 general. UK salaries also can vary drastically depending on where you live (and not necessar…

I'm from Slovenia, EU resident.

Then the UK should be relatively easier for you, since you should be able to apply for the same jobs as a UK citizen, I think?

Beyond that, I'd say google. There should be a number of forums or immigration sites offering advice for EU residents that would like to work in another EU country. (I'm American, so I consider you lucky in the visa world ;) )

Could also look at the Republic of Ireland?

Re: On Being a Junior Developer

#43
Love #6 & #7 - Unit Testing and Refactor.

It's such an important practice and best to build the right habits from the beginning. The cost of entry is so low with free mocking frameworks. Even commercial vendors like Typemock got into it with their Basic (http://typemock.com/isolator-product-page)

Re: On Being a Junior Developer

#44

I'm currently a junior developer and will share the lessons of my experience 6 months in: - Making mistakes will kill you, when you sit at home working on your personal projects and a bug slips through, it's not so bad, you can fix them and the client (or yourself) is normally pretty cool with it. On the other hand, when it's someone elses fault, E.G. yourself, your boss will come down hard on you. That's his project…

Get a better job, dude.

Re: On Being a Junior Developer

#45
post #12

The biggest one I'd recommend is "find a mentor." And I don't mean a manager (unless you're going on that path), but rather a technical leader that you can meet with once a week to month whose opinion you value and can provide you honest feedback on your work. You should plan to drive these meetings; count on them only to show up, drink coffee, and answer your questions. If it is not your most valuable hour of the we…

Can I ask what those issues are?

Sure, drop me mail. I'd prefer not to chat about it on a public forum. People (myself included) get defensive about their alma mater, but in e-mail you can just ignore me if you think my gross generalizations from experience are off-base for you :-)

Re: On Being a Junior Developer

#46
I am what I guess you'd consider a junior sysadmin. I graduated in May of 2011. While it's not being a developer, all of the points stand.

Read other code - still very important in admining. Other people write scripts, and there's a wide variety of Perl that's been written. Understand what's good and bad.

2-5 are all true. I just want to reiterate how important it is to ask questions (#4). When you start a junior position, spend time getting to know people. Set up one on one meetings with other people to get to know them and find out what they do. It's important going forward with a cohesive team. From the training side of it, if you're not asking questions I can't be sure that you understand what I'm saying.

Unit testing doesn't really apply to sysadmin that much, but basically have a plan to test if something works as you're going along. If you're making 4 major updates to interdependent systems, how can you tell which of the 4 systems broke the service for the user? I ran into that recently. We had a problem that stumped 4 technical experts and two vendors for over 8 hours, when it was a relatively simple fix (once they figured out what the fix was). Systems get more complex as you add things to them, so be sure to test the individual moving parts.

Refactoring is still always allowed. I feel as though you can extend this to procedures and processes. Where ever you go, there's always some "legacy" that builds up. If you ever receive the answer "That's just the way it's done" you should absolutely look into refactoring that. Odds are the decisions made back then aren't as relevant, because the base assumptions have changed. That's a major area you can show initiative on and start flexing your wings as your own person.

Re: On Being a Junior Developer

#47

I'm currently a junior developer and will share the lessons of my experience 6 months in: - Making mistakes will kill you, when you sit at home working on your personal projects and a bug slips through, it's not so bad, you can fix them and the client (or yourself) is normally pretty cool with it. On the other hand, when it's someone elses fault, E.G. yourself, your boss will come down hard on you. That's his project…

My experience as a junior engineer is completely opposite to yours. I'd also suggest finding another job--your current gig is not offering you a good environment to grow and learn.

Re: On Being a Junior Developer

#48

I'm currently a junior developer and will share the lessons of my experience 6 months in: - Making mistakes will kill you, when you sit at home working on your personal projects and a bug slips through, it's not so bad, you can fix them and the client (or yourself) is normally pretty cool with it. On the other hand, when it's someone elses fault, E.G. yourself, your boss will come down hard on you. That's his project…

You're preaching the virtues of submission. Don't let others make you feel this way.

    - Making mistakes will kill you, when you sit at home working on your personal projects and a bug slips through, it's not so bad, you can fix them and the client (or yourself) is normally pretty cool with it. On the other hand, when it's someone elses fault, E.G. yourself, your boss will come down hard on you. That's his project, his clients and his shame, if you make mistakes in a commercial environment, it costs someone money - get in to the habit of being your own quality assurance.
Mistakes won't kill you. Pain must be felt. Risks must be taken. Take responsibility for your work but remember that being protected from the reaction to your work is bad.

    - Your wage is shitty. Well, mine is, anyway. You have to learn to deal with this, I could go in to detail about finding housing and the lack of respect you face when you need housing benefits, etc, or can't eat for a few days, but there's no need. Get used to having no money and always put as much as you can aside for that rainy day you think you are immortal from at the moment.
Get confidence in your own abilities and then solve the money problem. Get confidence by being really good. And I don't mean wait for your boss to tell you that you're good, I mean look around Hacker News and find those that are good and then do as they do.

     - Give your boss respect, he may be friendly but he isn't one of your friends, you can joke with him but at the end of the day don't forget that this (wo)man pays your wages and evaluates your work, if you're making a lot of jokes but you have a week where your work goes wrong, the evaluation will be that you're the class clown.
Don't give anybody respect just because they have authority to evaluate you. Give them respect because they are worthy of your respect. Do your best; if you're cracking jokes and things go wrong, it's significantly better than if you were being dead serious and things went wrong. A positive, fun atmosphere increases the chances of people working well together and getting shit done.

     - Always be early, never be late. Your boss doesn't notice the fact that you come in early every day (by 15 minutes), what he does notice is the one day you're ten minutes late and unfortunately the hours aren't interchangeable. If you make a habit of being late, you are going to get fired, this isn't college where you could turn up to a lesson 15 minutes late and get a giggle from your peers for being that guy, this is the real world, where lateness isn't tolerated for very long.

     - Arrogance is bad. You aren't arrogant, but you have an opinion and you come across as it, starting sentences with "actually, I think" or "No, that's wrong..." will land you in the shit, especially in front of a client. Your boss wants to appear to be an all singing, all dancing super coder and until you have a few more years under your belt, your opinion is largely invalid. However, if something is seriously wrong, drop your boss an email or a skype or a campfire (That's a thing, right?) and explain why in the least condescending way possible, if you do this tactically and only at the right times it will look very good on you.
Care about being right, constructive and doing lots of high quality work. I wouldn't give a fuck if somebody thought my opinions were 'largely invalid' because there are few opinions in technology: when you want to win you should call upon hard facts! If you want you can massage your bosses ego a little bit but all of this talk of turning up early and bowing to people even when they are wrong has little to do with good business and everything to do with egos and social decorum.

Have you thought about moving to London?

Re: On Being a Junior Developer

#49
post #38

I'm also a 'Junior Developer'(around 2yr) and am currently in the phase where I have started to see the faults in the systems my seniors design. There's a module that's driving me nuts, and I'm still pondering on how to tell the senior developer(who wrote it) that it's crap, over engineered and too specific. The module works to an extent, but I can see problems up ahead if the module doesn't get fixed or an alternati…

Companies are increasingly opening up to the possibility of hiring remotely. It is a huge step forwards for any company to take but sometimes the benefits outweigh the risks so it happens [1].

I've been working remotely for about a year. We have a 10hr difference, talk almost every day, and its been great. It's a small company, only two devs, and we all care a lot about the work we do and the products we release.

So, don't limit your search for jobs where relocation is feasible - look for telecommute/remote jobs as well.

[1] The main barriers to overcome are trust and communication. Both parties need to really trust each other (one will do the work, the other will pay) and they need to have open and honest discussions. At the end of the day the job needs to get done and the fact that there's no direct face to face interaction between the people involved needs not to be an issue.

Re: On Being a Junior Developer

#50

I'm currently a junior developer and will share the lessons of my experience 6 months in: - Making mistakes will kill you, when you sit at home working on your personal projects and a bug slips through, it's not so bad, you can fix them and the client (or yourself) is normally pretty cool with it. On the other hand, when it's someone elses fault, E.G. yourself, your boss will come down hard on you. That's his project…

My experience as a junior engineer is completely opposite to yours. I'd also suggest finding another job--your current gig is not offering you a good environment to grow and learn.

Where are you and where is the GP? Cultures around the world are different. My experience as a junior developer in London around 2004 was very similar. Especially that whole "don't be late" thing which really really annoyed me and I'm still coming to terms with.
Post reply on HN