Details
-
Github
Joined devRant on 12/3/2016
Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
-
!rant
After over 20 years as a Software Engineer, Architect, and Manager, I want to pass along some unsolicited advice to junior developers either because I grew through it, or I've had to deal with developers who behaved poorly:
1) Your ego will hurt you FAR more than your junior coding skills. Nobody expects you to be the best early in your career, so don't act like you are.
2) Working independently is a must. It's okay to ask questions, but ask sparingly. Remember, mid and senior level guys need to focus just as much as you do, so before interrupting them, exhaust your resources (Google, Stack Overflow, books, etc..)
3) Working code != good code. You are an author. Write your code so that it can be read. Accept criticism that may seem trivial such as renaming a variable or method. If someone is suggesting it, it's because they didn't know what it did without further investigation.
4) Ask for peer reviews and LISTEN to the critique. Even after 20+ years, I send my code to more junior developers and often get good corrections sent back. (remember the ego thing from tip #1?) Even if they have no critiques for me, sometimes they will see a technique I used and learn from that. Peer reviews are win-win-win.
5) When in doubt, do NOT BS your way out. Refer to someone who knows, or offer to get back to them. Often times, persons other than engineers will take what you said as gospel. If that later turns out to be wrong, a bunch of people will have to get involved to clean up the expectations.
6) Slow down in order to speed up. Always start a task by thinking about the very high level use cases, then slowly work through your logic to achieve that. Rushing to complete, even for senior engineers, usually means less-than-ideal code that somebody will have to maintain.
7) Write documentation, always! Even if your company doesn't take documentation seriously, other engineers will remember how well documented your code is, and they will appreciate you for it/think of you next time that sweet job opens up.
8) Good code is important, but good impressions are better. I have code that is the most embarrassing crap ever still in production to this day. People don't think of me as "that shitty developer who wrote that ugly ass code that one time a decade ago," They think of me as "that developer who was fun to work with and busted his ass." Because of that, I've never been unemployed for more than a day. It's critical to have a good network and good references.
9) Don't shy away from the unknown. It's easy to hope somebody else picks up that task that you don't understand, but you wont learn it if they do. The daunting, unknown tasks are the most rewarding to complete (and trust me, other devs will notice.)
10) Learning is up to you. I can't tell you the number of engineers I passed on hiring because their answer to what they know about PHP7 was: "Nothing. I haven't learned it yet because my current company is still using PHP5." This is YOUR craft. It's not up to your employer to keep you relevant in the job market, it's up to YOU. You don't always need to be a pro at the latest and greatest, but at least read the changelog. Stay abreast of current technology, security threats, etc...
These are just a few quick tips from my experience. Others may chime in with theirs, and some may dispute mine. I wish you all fruitful careers!221 -
A young guy I work with burst into tears today, I had no idea what happened so I tried to comfort him and ask what was up.
It appears his main client had gone nuts with him because they wanted him to make an internet toolbar (think Ask.com) and he politely informed them toolbars doesn't really exist anymore and it wouldn't work on things like modern browsers or mobile devices.
Being given a polite but honest opinion was obviously something the client wasn't used to and knowing the guy was a young and fairly inexperienced, they started throwing very personal insults and asking him exactly what he knows about things (a lot more than them).
So being the big, bold, handsome senior developer I am, I immediately phoned the client back and told them to either come speak to me face-to-face and apologise to him in person or we'd terminate there contract with immediate effect. They're coming down tomorrow...
So part my rant, part a rant on behalf of a young developer who did nothing wrong and was treated like shit, I think we've all been there.
We'll see how this goes! Who the hell wants a toolbar anyway?!401 -
not the worst by itself, except I keep finding them everywhere
if(thingThatIsTrue == true) {
// omfg
}
or it's inbred cousin
if(!thingThatIsTrue == false) {
//herpa derp
}6 -
Writing all the major functionality of our app in a 10000 line class ( I shit you not) and then call it Utils.java.2
-
Copy code from StackOverflow and paste it. Then complaint on why is it giving a Variable Not Found.1
-
Wouldn't be amazing if we could charge like doctors?
User: good morning engie, just here for my checkup.
Engie: everything seems to be working perfectly with your laptop. That would be 70 bucks.
Not comparing professions just a random thought.12 -
Boss: I was looking over our expenses and was wondering why you are ordering a new piece of equipment?
Me: (I stand up & address my fellow code-drones) Can everybody save everything right now please. Good? Now newGuy commit your changes.
(Audible typing followed by the entire room groaning.)
Me: He just deleted everything...again and I am running out of backup storage.
Boss: ........So you want 1 of those things or 2?undefined raidlyfe raid webdesign boss ugh personal backups why do i bother git web development newguy webdev14 -
Working on colour related feature, slamming my head on the desk because the GUI is showing wrong colors.
Then I realized they are using BGR values instead of RGB. WTF WHY3 -
A former colleague of mine:
Convert.ToInt("One");
When told that this throw an error, he responded: "No, because see, it compiles".2 -
My dream project is to work on a Hollywood grade raytracing engine (Pixar Renderman, Disney Hyperion,...) I have done some hobby grade ones like to produce the image here6
-
My son loves...loves Star Wars, so when Star Wars Battlefront (on the PC) went on sale, he jumped on it.
To my shock (I'm not a big gamer), the game is filled with hackers/cheaters that are able to give themselves 'god' mode, so they can kill in one shot and take no damage.
My son (and others in the game) keeps 'reporting' them, but it looks like an issue EA is ignoring.
My son keeps asking me "You're a programmer, can't you fix the game so they can't do that?"
Good lord...I could care less about russians "hacking" our election (moronic press, doesn't even know what that means), but hacking my son's favorite game!...hmm..wonder how long it would take me to drive to EA headquarters and find that SOB dev manager in charge?
I get it, cheaters are gonna cheat, but fix your friggin' code! Aren't you embarrassed!?
Don't give me any of that "we don't know how they are doing it..." nonsense. This is devrant, not <insert media outlet you hate>.13 -
Designer: "And you know what we could do? We could make all the information be available anywhere the client wants. It's all in the cloud!"
PM: "Yeah! That's brilliant!" (High fives all around)
That's one day after a visit to a client saying they cannot rely on their internet connection. -
Client: hey are you home yet.
Me: no. I won't be for another hour.
Client: so who's logged into your PlayStation account?
Me: ....10 -
Pointers in C. You love'em or you hate'em. A lot of room to shoot ourselves in the foot or hang ourselves. Or doing both because someone thought it would be genius to tie the guns to the rope.2
-
finished learning a framework/plugin.. *feel like boss* 😎
bam! new version with breaking changes.. *feel like sobbing* 😭7