Three Questions, Twenty Developers (Part 2)

Welcome back to Part 2 of the contributions by our Twitter Techs.

Click Here for Part One

One of the first things that is embedded (no pun intended😄) in us is that this field never ends. The technology is continously evolving, the resources continually growing, the opportunities never ceasing, and the list goes on.

There are areas and concepts we overlook, underemphasize, or forget to consider.

I asked 20 Developers to share a little about their stories through questions that can be beneficial to beginners or intermediate level Software Engineers.

These two post and collabs with other programmers are meant to offer some clarity and guidance through distinctive experiences to help you in your journey. Please enjoy part Two.🙂

The Techs- Part 2

Annie Liew

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

It might take a bit longer than you expect to “get it”, but this doesn’t mean you’re not cut out for it. Give yourself a bit more time, keep pushing and don’t be so hard on yourself. Programming is difficult. It’s ok if you don’t understand all the different JavaScript functions or haven’t memorized every single CSS property. Googling is fine, and a part of your problem-solving process. Be kind to yourself.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense)?

Empathy. As a career choice, coding is something we largely do with other people. This could be clients, coworkers or fellow devs. Bring empathy to your craft and consider those who will not only use your product, but also those (including your future self) who might work with your code. Communicate accordingly, and make choices that will create better experiences for everyone in these situations.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

This depends on which stream you’re pursuing, but for front-end development, I would recommend:

  • A fully responsive webpage (or website) utilising semantic HTML and DRY modular CSS (or SCSS)
  • A project using JavaScript or a modern framework popular for the work you want. There are many options out there of projects you can build, but popular choices include quizzes, games (ie. tic-tac-toe, memory cards, maze), to-do lists, chat-bots or tip calculators. Bonus points for using an API!
  • Something that shows your personality. If you care about animals, consider making a dummy website for a local animal shelter or if you love music, perhaps you can build an app that recommends songs to someone!

Bonus question from @dave_quinta:
What project are you most proud of?

https://anniebombanie.github.io/custom-newspaper-generator/
The Absolutely Amazing Newspaper Apparatus! is the very first React app I ever created. It was extremely tough as I had just started learning JavaScript a couple of weeks before. I’m most proud of the time and effort I spent on error handling; I spent a fair bit of time thinking through how I wanted it to work and the end experience for the user. It’s an MVP that I hope to one day improve on, with additional API calls, animation and a more fleshed-out newsletter.

Ravin

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

My first piece of advice is that whatever you learn in coding, learn in a smaller portion and apply it in real world projects.
Instead of worrying about which technology/framework to choose, better to focus on creating some project you actually like.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

Reading other developers’ code and understanding the coding style, design process is equally important..In short, nobody tries to understand how and why this coding is done and they just accept it as it is.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

Instead of focusing on 3 projects, better to focus all your energy creating one. Don’t choose some other people’s project. Incrementally start working on the project you are passionate about. Always take a project that excites you try to get your creativity out and makes you learn and enhance your skill such projects will get best out of you.

Tadas Petra

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

I took the basic route, by going to school for Computer Engineering. I think this makes it pretty easy to make sure you are actually learning about code and how it works. I did a lot of low level assembly coding and that really helped understand what really happens with code.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

Definitely communication skills. It is not even related to coding really, but if you are not able to explain your designs, and what you are trying to do in a clear way, it will be really hard to work with you. So if you make software where team work is required, you will suffer.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

It’s cliche, but a Todo App really uses a lot of the necessary skills you need for development. Then a portfolio website would be nice, and then really any complete projects are great!

Dayana Lorza

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

I would had learned the full stack earlier. I was solely a Front End Developer for many years before piercing in to the backend. With a little more knowledge of the backend, a developer will get to see the bigger picture from a bird’s eye view rather than the parts solely relevant to their particular position. It’s easier to connect the dots.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

Empathy, we are all born blank slates a Senior Dev should not assume someone with less experience should have prior knowledge of something that is “trivial”. Technology has many rabbit holes to dive into we can not assume every person knows everything.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

Just build something interesting and useful, deviate the project from an online tutorial to fit you your particular use case. It’s harder to learn something as a Junior Dev if the your project isn’t some type of custom solution. ‘Eureka moments’ will occur faster instead of unconsciously following tutorials word for word.

Bonus question from @ashutoshaneja:
How do you assess the code during review? What key points do you look for?

Is the code following the orgs coding standards? If it’s the first iteration of a feature, does the code function without breaking other features? On the second iteration, how can we make this feature more efficient regarding space/time complexity?

Dan Spratling

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

If I could go back to the very beginning I would tell myself to learn how to learn. When I first started my career I didn’t really know how to teach myself coding and instead relied on others to help me. Once I managed to change that attitude and learn how to go and find solutions for myself things became a whole lot easier, and I grew substantially faster.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

I would say being able to understand business cases and big picture ideas makes you an invaluable developer. I’ve found this especially important as a freelancer, but it’s important in all situations. If you can think about how the things you’re changing will affect the business, you’ll be in a great position to grow.
If you want to get good at this before you’ve started at a company, think about the impact of decisions on your portfolio. Why are you doing things the way you are? Experiment with different ideas and see what works better (you can track this using an analytics tool). Maybe a brighter colour on your buttons means they get more clicks, or making your title a softer tone engages with your audience better.

Being the person who doesn’t just tick off tasks but also thinks about why things are happening and if there’s a better solution which could be used will put you at the top of the pile for new work, promotions, pay-rises and people will have a great opinion of you for doing it.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

I don’t think it matters too much which 3 projects you have on your portfolio. Just show off your best projects which focus on different skills. If you’re frontend like me, maybe one shows you building a project using HTML, CSS & JS, another using React and a third using WordPress. It’s more important that you show your entire range of skills and how you are able to improve than show everything you’ve worked on, but the projects essentially being the same.

And don’t underestimate how important your portfolio itself is. Your portfolio is also a project and the first project they’ll look at. There’s no point having 3 amazing projects displayed on a portfolio you put together in 5 minutes. Give it the same level of attention (or more) than all your other work.

Bonus question from @NiiteHenga:
How can I learn a new programming language?

There’s lots of different approaches you can take to learn a new programming language. Your first one will always be your hardest and undersanding general concepts will make your life easier when learning and understanding further languages. This means, your first programming language will take a lot of time to fully understand.

A few effective ways of learning new programming languages are:

1. Video courses

Video courses are great if you like having someone explain how things work to you. You can follow along and make notes and easily go back and review things.
2. Online curriculums
Curriculums like [FreeCodeCamp](https://freecodecamp.org) or [The Odin Project](https://theodinproject.com) give you a more structured course than videos would. You build things as you go but are still left to your own devices.

3. Bootcamps

Bootcamps are a more personal approach and whether online or offline you’ll have to attend lessons and have check-ins with mentors to make sure you’re keeping up with the course. They’re also often paid and can take anywhere from a couple months to a year, depending on the course.
4. University/College

University is the most traditional way to learn programming but not always the right one. As courses take years, there is the opportunity to learn a lot of new concepts and try out many different programming languages and you’ll have a lot of live teaching and catch-ups with lecturers and peers, but they are also very expensive and you might not want to dedicate 2-3 years of your life earning a degree when you might likely learn faster in an actual workplace.

No matter which option you decide is best for you, the best way to truly learn is to build. Keep building as you go. Make mistakes. Improve. Real projects are the end goal and you can’t learn properly without building anything. This has the added bonus of providing you with things to put on your portfolio once you do decide you’re ready to start looking for work.

Francesco Ciulla

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

Choose what you want to do, and based on that the language and technology. Don’t choose JavaScript because it’s famous or Python because it’s cool. Choose topics such as creating a site, analyzing statistical data, and so on.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense)?

GIT. not GitHub (know the difference!). I’ve tweeted about this many times. =It is essential to understand the basics, not to become a master before starting programming. But not knowing it and losing projects doesn’t save you time.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

It depends on what you want to do. I will answer for web development: – mini project with crud operations
authentication / authorization (e.g. with json web token) and something to impress with css 🙂

Bonus question from @Khangat_harsh:
How has the journey being so far , when you were just coming up how did you remain consistent?

I wake up very early, and I run / do exercises. Then breakfast, check twitter, and start work. During lunch break I tweet again, and I often do some posts trying to be as useful as possible, or I get an idea from what I’m working on at that moment. After lunch I still work and around 5 pm I am done with the job. Then I dedicate myself to studying “I dedicate at least 2/3 hours to learning new things, reading articles, a book or so on. When it’s time for dinner I prepare something (as a good Italian I like to cook!) and then some more socials (rarely series, and I don’t have a television). And finally I go to bed (usually quite early).

Lors

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

To slow down! I rushed so much at the beginning and tried to retain so much information that I ended up burning out, after all that, I had to go back and re-learn all of the stuff anyway – and also to comment out all of my code, I regret not doing that from the start!

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

The willingness to see different perspectives of peoples opinions/code – What works for you, might not work for someone else, they may have an alternative way to solve a task that reaches the same outcome, understanding different approaches helps us become better programmers.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

  • A Tribute/landing page – One of my first projects and it really helped me get the hang of inserting images/inline CSS and the skeleton for a HTML page
  • Rock/paper/scissors – really helped embed my understanding of vanilla JS (Especially functions and switch statements!)
  • Your own portfolio! – I really recommend making a copy of your first portfolio and then looking back on it in 6 months and comparing the changes – you’ll be amazed!

Bonus question from igIfeanyichukwu:

What was your early start in the developer journey like and how did you scaled through the ups and downs you came across?

My journey was hard to begin with, I think I cried a few times because I couldn’t size an image, it was the simple things, then in the next breath I’d style a heading and id be celebrating, you have to remember for every fail there is a win, and I can honestly say that one win will outweigh all of the fails! – keep persevering

Joseph

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

I always say this, focus on one thing at a time. Its easy to get distracted with so many things to learn. Make a plan and focus.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

Being able to talk business logic. When looking for a job they will also look at how you are going to communicate with stake holders.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

A CRUD project, A mobile optimised project and a fun personal challenging project

Bonus question from @DTulsiPrasad:
Is it good to know more programming languages and not use them in the future at work or being specific to your domain like JS and improving upon various frameworks it has, is the best way to go?

I’d say being specific would benefit you more. If you drill down into a particular speciality your career will rocket in that field. However, it’s important to be aware of what other languages can do.

Devin Ford

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

If I could go back, I would ensure that I spent ample time really learning the fundamentals and making sure I was able to apply them before rushing to move on. Learning to code is not a race, you don’t get any extra points for getting through any of it fast, you only hurt yourself by not building the foundation needed to successfully code.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

The ability to make your website or app accessible to all people. Designing a beautiful application or website is great, but not if it leaves others out. When designing you should be using tools to ensure your website is accessible to everyone via any platform or input. Great resources for this are https://a11yproject.com and https://github.com/jackdomleo7/Checka11y.css (an opensource project by
Jack Domleo )

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

Top 3 is tough, but I will say everyone should have one larger project they can showcase to potential employers using everything they’ve learned, and hopefully some of the tech stack for the job they are applying for. For example a large scale bug/ticket tracker is a great one, because it’s something that most companies use, and will showcase a wide range of your skills as a developer, and will be a good showcase for almost any role.

Bonus question from @jamestucker:
How do you continuously learn without burning out?

Burnout is a very real thing, that a lot of people may not want to believe or admit until they experience it themselves. What I find is regular breaks from coding and learning are extremely important. I typically will take 2 days a week, sometimes spread out, sometimes back to back and not code. I will spend time with my wife, my friends, or just binge a Netflix show I’ve wanted to watch. It feels foreign sometimes, or like you’re not working hard enough, but I promise you a day or two a week is so much better than a month or more from burnout where you have to comeback and relearn things due to such a large gap.

Special thank you to Ria for putting this all together, I wish there was more resources like this when I first started, best of luck to everyone on their journey right now, just remember persistence and dedication will get you to where you want to be!

Rojhan (Ro) Paydar

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

I would tell myself to join the code community! Even if it seems intimidating at first, it’ll help you learn so much faster and get inspired!

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

I supposed soft skills! Being in a team where everyone can properly communicate and understand each other is incredibly key.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

As a junior myself, I can’t think of specific projects to recommend to others, but I will say you want to choose projects that can show case your knowledge of each technology that you use.

Bonus question from @ibhawoa:
How has the journey being so far , when you were just coming up how did you remain consistent?

It’s been a roller coaster! I never ever thought I would meet this many people while learning a really cool skill! Having a group of people to motivate me reminded me to keep consistent in my work!

Stefan Natter

Q1. If you could go back in time when you first began to learn to code and give yourself only one piece of advice, what would it be?

When I started coding I was overwhelmed by the mass of tutorials and “how to start” articles. So I tried to proceed methodically with the help of a system that suits me: Time, Try, and Talk.

Take enough time to learn and grow, don’t take shortcuts. Try new things and don’t give up if it doesn’t work from the beginning. Bugs are part of the learning process. Apply what you have learned by talking to your colleagues and showing them what you have learned. This helps you to discover new aspects and grow faster.

Q2. What do you consider to be an essential but overlooked skill to have as a programmer(in any sense) ?

Literally the ability to read between the lines. But not in terms of code but in terms of emotional intelligence and patience. With a lot of practice everyone becomes a good developer. But although we are dealing with machines a lot, I think the ability to take care of other people’s problems, to help and to explain patiently and appreciatively how something can be solved better is as important. Too often, as a junior, you don’t dare to ask for fear that you may appear weak or inexperienced. But that is exactly when helping hands are needed.

Q3. What are your top 3 recommended projects to have on your portfolio as a Junior Software Developer?

Show only what you really feel comfortable with. Don’t force yourself to do a tutorial just to have a repo at the end with code and concepts that you barely understand.

If possible, make sure you have a demo of the project. For example with GitHub Pages, Codesandbox or other tools. Make it interactive and let it speak for itself.

My top 3 would be:

  • Your own website: even if you can easily publish your blog and static pages on Hashnode and Co., I think it is still worth having your own website. It is something completely different if you can do your own work and present the results. Show that you are familiar with the technology in practice. Make it your sandbox with marketing potential.
  • Tutorial Repo: create a project in which you explain step by step what happens, how new modules can be added and what to consider. Show that you can communicate and explain.
  • Real-World App: create an application that solves a specific problem (Markdown -> HTML, URL decoder-encoder, Bitcoin price ticker, …), install it on Heroku, Netlify, Vercel or any other hoster and make it open source. Show that you are interested in creating value, for yourself and for others.

Thank you for making it to the end of this blog post. I hope you enjoyed this read and found some principles you can begin applying today!

Please leave a comment below and I look forward to reading your feedback!

Be safe and happy coding!☕

7 thoughts on “Three Questions, Twenty Developers (Part 2)

Leave a Comment