19 Tips For Software Engineers In 2019

Emma Wedekind ✨ on December 23, 2018

It's almost 2019 and there are some amazing things coming down the pipeline in the world of programming. But for many new developers the prospect... [Read Full]
markdown guide

20. Give yourself time to work through this incredibly thoughtful list 😀

If you don't have a mentor, that's OK! If your resume or portfolio is light or even non existent, that's OK! (I've been at this for 6 years and still don't really have a portfolio) The fact that you are thinking about these things is a huge win! Given time and some hard work you can accomplish all of these!


Reading your comment was the exact kind of encouragement I needed today :)


Such good advice! Thanks for putting this list together, Emma!

I think the mind tricks in here (dealing with imposter syndrome, getting involved with a new community, asking for help, etc.) are the toughest ones to master, but also the most valuable/rewarding to get a handle on. These are things that apply not only to software engineering and professional development, but also to any area of one's life where improvement and mastery is the goal.

In my experience, it doesn't matter if you're self-taught and new to the game, or decades into it with all the degrees and experience, those things can still be challenges you have to face on a regular basis. In fact, if you don't ever face those things, it might be that you're not pushing yourself hard enough.

Getting comfortable being uncomfortable is a great skill to build, as growth and learning tend to happen outside of one's comfort zone.

As soon as you start feeling like the expert and like you have all the answers, it's probably time to start working on mastering a new technology.

It's also good to remember that we're all new to it every time a new technology comes out or gets chosen for a project we're working on. As such, it's important to focus on oneself and doing the best job we can do with whatever we're currently working on, rather than comparing ourselves to others and measuring our success against others' skill sets and timelines.

Seriously, this is all great advice! 👏 Thanks again for sharing it!


Personally, I loved this one:

Just because something "failed" doesn't mean it wasn't valuable.

Thank you for sharing this! Thanks!
Merry christmas!


thnx a lot Emma, i really appreciate your useful tips :)


Beautiful post Emma, thank you. I'm a big advocate of #14. I think of work/life balance as if I am the sun and all the areas of my life are like planets in orbit around me. Family, health, hobbies, work, love - if one of those planets falls out of orbit it can mess up everything for all the other planets and the sun. I wish I could take credit for that analogy; but it was something a Guru told me 20 years ago. I'm glad it stuck!


As this is something I personally struggle with quite often, I find this analogy super helpful. Thanks for sharing it!

Focus on one thing at a time

Thanks for this reminder. It's so easy to get sidetracked when learning something new. I get FOMO when I'm in the middle of learning one framework/language/etc and then I come across an article about a shiny new something else. I feel like I HAVE to learn that new thing right away and get distracted with my current progress.


This is an awesome post! Very informative. Thank you so much. I'm at the point where I find most employers want you to have experience in this language or that framework. But they all do the same thing for the most part. So I go and watch some tutorial on the subject only for the next potential employer to want me to know something completely different...ugggghhhh🤔


Agree with everything except one little problem.. "you can make it look nice later".. While I understand what you are saying but most new people somehow interpret it very wrongly. My team has two relatively junior devs and before I joined them they were busy focused on server side code. They assumed having a reference to bootstrap in site some how magically will fix all the bad ui decisions they were taking. Its not that simple. You can make it look nice provided you followed basic principles of the technology /framework. For e.g instead of using the grid layout they were still styling the forms with table tags.

Also, probably obvious but please read the documentation of the tool/framework you choose. It really helps everybody.


You're right. The new people in your team really did interpret "you can make it look nice later" wrong. They should've used div tags and style it up with CSS later to make it look nice.

I hope someone in your team failed them on the client-side code they were making so they could fix it up; they probably didn't know using table tags for forms is bad UI. That's a learning moment for them as junior developers.


Great article, thanks for sharing it! I found this to be very helpful.

I was wondering if you had any further tips regarding #4? Particularly: I have a bad habit of, once I learn something, I just assume it as 'common knowledge that everyone knows'.

So, when I try to think of ideas for things I could potentially write a blog post or something about, I often decide against most of my ideas for the reason of "people would already know about this / not want to read about it." Lately at work, though, I'm finding this to not be the case and that I sometimes do my co-workers a disservice by not sharing certain information because of this.


Everyone learns in different ways and all content you produce, whether completely unique, will be valuable :)


9: Be comfortable with being uncomfortable.

Awesome post, I like this one. This is something that took me awhile to learn. Whenever I need to use a piece of new technology for my work on a daily basis in a startup.


I just love it :) Thanks for the wonderful post. Wish you a great 2019 ahead


Thank you very much for your motivational post!


  1. Focus on one thing at a time

This I struggle with all the time!

  1. Maintain a good work/life balance

I plan to work on this in 2019 otherwise I am going to burnout taking on client work and too many side projects!


You nailed it! Every point on this post is extremely important.


You have done wonderful job for software engineer by providing here a list of 19 tips for them because there are so many technologies to learn and so many languages to choose from.

UK assignment help provider at Quality Dissertation.


Thank you, Emma, for these helpful tips. I can't wait to read your next post.


great post, Emma thank you for sharing such great content.

One more thing I would like to add:

never give up and stress out with something need to be done.


Let me add to the cacophony of people praising this post! Well done, Emma, thank you. Sharing this everywhere today that I can think of.


Good stuff! Being involved in a community is something that I struggle with personally. Thank you for posting this list!


Absolutely Solid advice that i will definitely be using in my quest for code , thanks Emma :)


Thank for this advice Emma, this will help me improve my self as a programmer.


Good artist. Don't get discouraged!
Really Good.

  1. Get involved in the community

This is something I should have done from the beginning.


Thanks for your advice, It's a really good initiate for me


Thank you very much! I suffer with impostor syndrome now! I decide to learn the basic technology. Let me fell free.


Thank you, Emma. Very helpful tips.

I'll definitely try Tip 7.


Great tips! I like how many of those apply universally to anything in life really. Thanks for writing those up!


As the first learners, Those are valuable and worth, Just keep going and try to read, see and decipher code

I have been your follower, I hope We can be partner for sharing



Thanks Emma ,
That's a big help for me as I just started coding a 6 months ago I really don't know any thing and from your post really get a jump start to my dreams

Sloan, the sloth mascot Comment marked as low quality/non-constructive by the community View code of conduct

If you don't understand most of this already, you're not an engineer. The suggestion otherwise devalues the investment and time those of us who are put into our education and craft.

That's not to say you can't get there, but you have to put in the work to join the club.


I disagree. New grads in particular may struggle with lot of things on this list but come up with some crazy smart solutions to problems. In fact I know seasoned engineers that struggle with a good many of these items. These tips can help you take your engineering ability and career to new levels, but they are not the components that make up an engineer.

Sloan, the sloth mascot Comment marked as low quality/non-constructive by the community View code of conduct

Yeah I've expected something more technical and less "cheesy general advices". These things should be a norm in all jobs everywhere, so it's just common sense. Thx for the common sense emma. o_O


Do you know why your comment has been downvoted?
IMO it's constructive. Writing negative comments doesn't mean you're not constructive.
Does it mean that DEV community only accepts positive comments?

No honestly, but I might have a clue. Dev.to seems to downvote anything that is not very positive. Like the community is not enbracing any kind of criticism or negativity. Maybe you shouldn’t comment if you’re not praising?

Also the reason stated was “low quality/non-constructive” wow talk about freedom of speech: if you’re not constructive, shut up.

Criticism is great - I welcome it - but it should be constructive otherwise it's just writing something rude.

There are enough online communities where people will respond with: "I don't like it", "this sucks", "this is cheesy", and it only serves to insult the original poster.

The article wasn't too your taste because it wasn't technical and you already know and practice everything in it. Wonderful. Why not contribute some of your experience in the comments instead, then go away and read a technical article somewhere else?

What I noticed is that there is quite no criticism here on DEV.
I think that if we want to grow as a community and to be more valuable, we have to criticize more (in a constructive way) and to accept criticism.
This article is great and has got a lot of positive comments but the only negative criticism has been reported.

I totally agree that constructive criticism is much more valuable than blanket praise. I can't speak for the level of either on dev.to: I've seen some articles generate good discussion, but perhaps your experience has been different.

I do agree with reporting Menil's comment though. It wasn't constructive and amounted to, "this wasn't the article I wanted to read". I found the tone of it insulting too - calling it "cheesy" and dismissing it as "common sense" - although I'm sure it wasn't meant that way.

If there's something to add - 'I don't agree with that, but how about this' - then great but otherwise it's in danger of descending into mud-slinging, which nobody wants.

From what I can see Menil looks to be a good Android developer and I'd really like to see them write a technical article on getting started with a simple Android app, because it's something I know nothing about.

I don't promote hate speech or mud-slinging and I apologize to the community and especially to the author if I'd cross as such. I didn't want to sound condescending either, but I probably did.

My issue was that maybe the title was misleading for me, and I expected something more technical. Again, my fault.

But, my comment was downvoted so fast, and honestly, that scared me a bit. A community that tries to silent people by downvoting, and doesn't discuss is not a place I'd like to be.

Thank you both Boris and Graham for interacting and possibly opening a topic that is important for DEV.to to grow.

Also as you said Graham, I should've been more constructive and I will. Here are some of the tips I find interesting and valuable in addition to Emma's post:

  1. Consistency
    It has shown with both juniors and more experienced developers that consistency is hard to maintain, especially in long-term projects. Find something interesting every day and keep your level of work consistency at it's optimum.

  2. Deliver often
    This is something I've been practicing for over a year: Show your progress on a daily basis, be transparent about it and deliver often.
    Well, you want to show you're going forward, and you want feedback for your work. How will you know you're doing a good job if no one sees it for 2 months straight?
    Make smaller chunks, and deliver often.

  3. Ask for feedback if you don't get any
    We all want to think that we're doing the best work possible, but instead of assumptions, use real data. How? By asking for feedback. Very often you will get one anyways, but whether it's positive or negative, always be grateful: they invested their time to give you a piece of advice or a critic.

Thanks for this, Menil. I really like your additions.

I'm really thankful to you both for engaging in a very reasonable way - it doesn't always happen that way online!

my comment was downvoted so fast, and honestly, that scared me

Challenging something negative is better, of course, but the down vote is a quick option to mark something that's unconstructive. I'm sure the community will get better at this as time goes on.

I'm very glad that you've illustrated number 1 from Emma's article and given some nice additions. Looking forward to your first article on Android development, Menil!

code of conduct - report abuse