Quickfire Discussion: I'm a Junior Developer, tell me your top 3 pieces of advice.
What did you wish you knew when you were a Junior Developer?
What would you tell current Junior Developers?
etc
Quickfire Discussion: I'm a Junior Developer, tell me your top 3 pieces of advice.
What did you wish you knew when you were a Junior Developer?
What would you tell current Junior Developers?
etc
For further actions, you may consider blocking this person and/or reporting abuse
Scofield Idehen -
Jasmeet Singh -
Ben Halpern -
Chris Jarvis -
Top comments (22)
Posse up.
Everyone tells you to attend all the meetups, but sometimes that's difficult and intimidating when you're new and don't know a lot of the people at the meetups. Befriend other junior devs around town, and you'll find meetups become more enjoyable. (Bonus: You're building a strong network with future senior devs!)
Keep healthy.
Get sun, move around, laugh freely (even laughing meditation does wonders). You've got a long life ahead of you, so please care for yourself.
Work on a long-running project.
Toy apps are tempting, and you should indulge a bit. But make sure to set aside some time for a larger project, or just a project that takes longer to finish. You'll find such projects work different "muscles", and they'll contain opportunities for learning that smaller projects won't. Maybe partner up with a friend or recent meetup acquaintance.
BIG + 1 to Work on a long-running project this is exactly what pushed me to start dev.to and stay motivated to grow it.
Bravo, @Sumeet!
You are your Reputation. Act Accordingly.
Make yourself known in your organization for delivering quality stuff, on-time, that's easy to sustain in production. Be the kind of guy that when someone comes to a dev manager in a crisis and says, "Andrew's available...can he help you out?" They immediately think, "THANK GOD!"
By the same token, never sacrifice your reputation for a single "win". Your rep is not worth a single account, single production deploy, or single code commit. Don't climb over somebody else's back to win. Give credit to others. Cover for them. Be someone who earns their trust, genuinely.
It's not what you know. It's who knows what you know.
Follow-on to the above. Put yourself out there enough so that whoever "they" are, "they" have confidence in you. I once had a developer I was mentoring that I pushed forward for promotion, and my director said simply, "I don't know this person. That's a problem." For a technical person, that's irrational, but I've found it to be true.
Set firm boundaries for yourself
I'm a person who didn't have boundaries. I worked too much on things that eventually ended up in the bargain bin of Office Depot. For what? It's a miracle I still have a family.
Do better. Cultivate saying "No" and setting expectations in a way that's professional.
Amen on it's not what you know but who you know!
Get curious
Have side projects of varying sizes / timeframes. Read a lot (books, more dev.to articles, other blogs... Twitter is your friend). Listen to podcasts. Experiment with new languages / frameworks / tools. Contribute to open source. Whatever 'curiosity' looks like for you, do it. Don't leave your craft at work.
That being said...
Know when to walk away
Don't hesitate to ditch a problem that's seriously frustrating you. Chances are you'll come back tomorrow and solve it in 5 minutes. Don't sacrifice the long-term love of your craft and drive yourself nuts over short-term bugs. To quote Rework, "ASAP is poison."
Speaking of your craft...
Software engineering is a craft. Treat it as such.
Learn to write Clean Code. Use TDD. Get really comfortable with the tools you use every day. You'll save yourself and your team loads of time and effort, and generally feel like a bad@$$ knowing that you're good at your job.
It's smart to ask questions like this as a junior dev, when your habits are still relatively malleable!
Can't recommend Clean Code enough. It changed my way of thinking about code so much!
Think longterm
Progress is up and down in this career. Don't pay attention to the short intervals. Lonterm gains are clearer.
Avoid FOMO
Fear of missing out on different technologies can be paralyzing. Have fun with what you're currently into and realize you can catch up later with the rest.
Don't make apps for your friends and family
Seriously. Everyone wants you to partner with them on something. Try to manage their expectations.
Thanks for making this post!
All the responses are 🔥💪🔥
Learn SOLID Principles and read The Clean Coder: A Code of Conduct for Professional Programmers by Robert C. Martin
Always focus on improving. Improve you knowledge, skills, experience, soft skills. The more you learn, the more you earn #HoskWisdom
You are responsible for your career. You must drive it and know where you are going. Know what your dream job is, know what your next role is and start learning heading in that direction.
Longer version can be found on my blog for Dynamics devepers
crmbusiness.wordpress.com/2017/09/...
Just this: read voraciously. Read about everything. Read whatever you can find. Read on the job. Read at home. Read waaayyyyy more than you need to in order to solve a given problem. Read until you know the right way to do the thing. Your market value will rise exponentially.
Ask your company to buy you some books. I always recommend Code Complete, but also get some books on the languages or technologies you're using.
If your company won't buy you books or doesn't let you spend a few hours on the clock every week reading in order to sharpen your skills, quit. Per hour, working increases your value by fractions of a cent; reading increases your value by dollars.
1. Your real job
2. A business (aka workplace)
Original tweet: twitter.com/JoseGonz321/status/917...
3. Learn personal finance
Don't impress yourself with how much you earn, impress yourself with how much you keep.
Frugality is king whether you are making $50K or $100k+
As you become more senior, the money will be there. But the salary ceiling is very real. Find out what you want to do: (consulting, service, product?) as you progress in your adventure.
Invest
Debug your code
I've taught basic and intermediate programming to students and co-workers, and one recurring behavior is that people often forget the debugger is there to help. Be careful with endless trials and errors when troubleshooting bugs in your code, but instead take some time, debug it and understand the flow it's taking and where are the gaps.
Is programming a job or a career for you?
It will take a while for you to figure this out, but will help you realize where do you want/need to put your focus on. If you really enjoy and want to improve your programming skills, do not rely solely on what your job has to offer you challenge-wise. Study and practice on your own, keep reading about what are the current trends and why, and if you're up to, build some side projects.
Refactor always
On the first few years of your career, you will often join teams that are rebuilding something, often a redesign of an old, legacy system. Your new system is cool and shiny, and everyone loves it. After a while, in exchange of productivity, people might start taking shortcuts to deliver things faster; New members might be assigned tasks which they have no idea where to start and will deliver code outside your standards; Also, if you have plenty of unit tests, which are there to help, you might be intimidated when you think about refactoring something that's there for a while, and heavily tested: if you refactor that, you'll have to review/rewrite so many tests! After a while - usually after the team changed so much it has no faces from the original team, they realize that - ta-da! - they got a new legacy system, and the cycle repeats. To an extent, much of this could've been avoided if the team was committed to quality and were not afraid of refactoring code. Well-written, flexible and secure code can accommodate design changes and be submitted to new business needs.
Write Code Every Day
Dancer is dancing, pianist is playing on the piano, programmer is writing code. Every day.
Learn How Computers Work
If you don't know how computers work, you're not "authorized" to write programs. Don't forget, you don't just use computers, you are adding your part to a system. The best way to learn how computers work is to learn assembly. You don't have to learn x86-64, you may choose a vintage platform, e.g. 8086 DOS, C64 etc., they're simpler and provide more fun.
Create Pet Products
At the work, you're a small cog in a big machine. It's okay, it's very profitable to know how to be a part of a big project, how to work together with many people, know tools and methodics. But at home, you are alone, and you should do your pet projects as if they were products. Use version control (GitHub - share), write unit/integration tests, write documents (how to compile, how the code is organized etc.), write manual (for users), create a small website (marketing), make a real product.