Details
-
AboutPassionate Java developer sometimes writes queries too:)
-
SkillsJava, GWT, SQL, PL/SQL, Birt, QlikView
-
LocationBangalore
Joined devRant on 12/5/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 -
I was giving an interview this other day and I was sharing my screen with the interviewer.
Interviewer 😦: Is this linux you are using?
Me 😅: Ah yes. Since this is a coding round I am not comfortable on windows for coding.
Interviewer 😳: And this is your personal laptop?
Me 😁: Yes, since the only use of windows is primarily to play games and the games I play are usually supported on linux, I dont see any reason why my daily driver should be anything other than linux.
Interviewer 😯: What distro is this?? Looks cool.
Me 😆: Its Ubuntu with KDE Plasma. There are some really cool things in here which actually make my life quite easier.
Interviewer ☺️: I must check this out today itself. Lets start with the interview then.
Me 😊: *Blushing in my mind
And this is how you score some instant brownie points in an interview. Actually if truth be told, that laptop was actually my work laptop and my personal laptop has windows on it because nvidia and Assassin's Creed.19 -
A client wanted "a video on a server".
I took a server, put it on the ground, stood on it carefully and took 'a video on a server' 😊
I was so tempted to just send it 😆4 -
I fucked up hard for the first time yesterday at work.
Came in and expected a huge speech from the bossman.
He called me to his office:
Explained me where I went wrong and what I should do next time with a big smile on his face!24 -
*Builds a web component for a client website*
CLIENT: I don't like it, can I have it a tiny bit over to the right more
ME: Taps the arrow key a few times making it look like I'm doing something.(Which actually does nothing)
Client: 👌Perfect
😂😂😂 Wut 😂😂😂19 -
My classmates are such hypocrites. They pretend to be programmers, but they can't fool me.
"Oh sorry. I can't show you the result of my html code. I have to compile it first, but there's no WiFi."
There's so many things wrong with that.39 -
CS Professor: “What M word is the black hole to all productivity?”
Student: “Management”
CS Professor: “Was going to say meetings but that’s better”16 -
Girl: "hey"
My Brain:
java.lang.NullPointerException:
at net.brain.functions.Talk.retrieveSpeech(Talk.java:2978)
at net.brain.functions.Talk.createFlirtyResponse(Talk.java:3132)
Me: null
*Girl walks away*20 -
Got call from extremely angry customer, our product is shit and doesn't work. At all. Important customer so I went to visit.
He had the perfect setup, our product to the left, our competitor's to the right.
He connected the Ethernet cable to their product, it worked. He plugged it out and connected to ours... Nothing. Shit.
I started to debug on the premises, took logs, everything. It seemed like our product didn't receive any data at all. What the fuck? Tried everything, debugged low level, still nothing. Sweating as hell.
After two hours I got a strange feeling. So I swapped place, our product to the right, competitor's to the left. Now OUR product worked, competitor's zilch.
THE FUCKING ETHERNET CABLE HAD A GLITCH. IF YOU BENT IT TO THE RIGHT IT WORKED, IF YOU BENT IT TO THE LEFT IT WAS BROKEN.
I had never seen a customer be this embarrassed in my life. He apologized to me, my boss, his boss, the Queen, everyone.
We got the contract.20 -
"Don't use git, it is too complicated and we don't have time for this."
2 days later the same person made changes directly on the FTP which I later unknowingly overwrote.
Take that you imbecile!13 -
Dear people who complain about spending a whole night to find a tiny syntax error; Every time I read one of your rants, I feel like a part of me dies.
As a developer, your job is to create elegant optimized rivers of data, to puzzle with interesting algorithmic problems, to craft beautiful mappings from user input to computer storage and back.
You should strive to write code like a Michelangelo, not like a house painter.
You're arguing about indentation or getting annoyed by a project with braces on the same line as the method name. You're struggling with semicolons, misplaced braces or wrongly spelled keywords.
You're bitching about the medium of your paint, about the hardness of the marble -- when you should be lamenting the absence of your muse or the struggle to capture the essence of elegance in your work.
In other words:
Fix your fucking mindset, and fix your fucking tools. Don't fucking rant about your tabs and spaces. Stop fucking screaming how your bloated swiss-army-knife text editor is soooo much better than a purpose-built IDE, if it fails to draw something red and obnoxious around your fuck ups.
Thanks.62 -
I recently met a young fella (14yo) playing League of Legends. He asked:
- What do you do for a living?
- I'm a programmer, do you know anything about programming?
- I don't, actually.
Apparently he was playing from a LAN Gaming center 'cause he didn't have a computer at home (his computer had broken and these Lan centers are pretty affordable).
I figured I could explain to him what was it and what super powers you could get from it. Turns out I recommended a JS course in codecademy and now he goes to the LAN center every day to study programming (he got really into it!).
Now he always pings me with questions about JS and apparently he's learning a ton! He had almost no English skills too (we're Brazilian), and because most of the material in the internet is in English he found himself some free English courses and he's now taking them!
Knowledge is free on the internet and I guess he's just realized that.
Not exactly a rant guys, just figured it was a nice story to tell :)
#TeachAKidHowToCode57 -
Mom : My washing machine is not working.
Please fix it.
Me : I am a computer engineer.
Mom : You are an engineer though.
Me : That's not how it works.
.
.
.
2 hours and many YouTube tutorials later
Me : It's done.
Mom : Didn't I tell you you can do it.24 -
If Programming Languages Were Girls:
Java: Your current girlfriend, you've been going steady for a while now. Things are okay.
Kotlin: The girl Java finds you cheating on, she's just amazing, and you wish you'd met her sooner.
Visual Basic: The girl you accidentally started a relationship with because you didn't know how to say no. But quickly realised your mistake and regretted it.
JavaScript: A childhood friend you occasionally hook up with. But you could never settle for a relationship with them.
Python: A bossy, manipulative girl who quickly turned things sour. But everyone else loves her because of her huge libraries.
-----------------------------------------------------
My and a co worker were joking the other day about what programming languages would be like if they were girls. This is what we came up with (Original inspiration: the Distracted Boyfriend meme (Feel free to add your own!)).49