Talent Development Centre

Tag Archives: developers

All Talent Development Centre posts for Canadian technology contractors relating to developers.

Are You Keeping Up Compared to Other Developers Around the World?

Are You Keeping Up Compared to Other Developers Around the World?

The Stack Overflow 2020 Developer Survey was released this Spring and, as usual, delivered tons of statistics about developers, what they’re working on, how they’re thinking and where their future is going. One chart they published is of particular interest to any developer looking to remain competitive in the job market.

Stack Overflow asked developers how frequently they learned a new language or framework and the results were a testament to how fast innovations are happening in tech. Around three-quarters of all respondents — professional developers and hobbyists — learn something new at least once a year, and around half of those people said it’s closer to every few months.

Stack Overflow Survey Results: How Frequently do developers learn a new language or framework?
Stack Overflow Survey Results: How Frequently do developers learn a new language or framework?

What is Learning?

Learning can be as extensive or as simple as you’d like, depending on your goals and time available. As long as you’re expanding your mind and putting something into your brain, you’re making yourself more valuable to future clients. For example:

  • In the case of this Stack Overflow survey, respondents are saying they learn a new language or framework. We’ve shared loads of resources with suggestions on where you can pick-up these new skills.
  • You can also force yourself into learning as you go by taking on new challenges that require you to do some research and solve different problems. The Stack Overflow survey also summarized where developers turn to when they need to solve such problems.
  • There are tons of skills you already have, but might have gotten rusty. If you maintain a certification, you’re forced to keep up on skills, but how many others did you learn a few years ago and haven’t used since. It’s great to go back and refresh those every once in a while.
  • At the other extreme, some professionals look to get into a brand-new field of work which often requires more formal training. That comes with more financial and time investment, but pays off.

The Next Step is Getting There

Regardless of what you want to learn, nothing is going to happen unless you create a plan that will put you where you want to be. A high-level roadmap might be:

  1. Decide exactly what you want to do. Maybe it’s based on in-demand skills or just something you’ve been interested in picking up. Pinpoint exactly what it is you want to learn and where you want to be.
  2. Find Out What You Need to Get There. If you’re looking to expand on a language you’re already familiar with, a few websites and weekend exercises may suffice. As noted above, if you have a more ambitious goal that requires extensive learning, you’ll need to investigate formal training.
  3. Build Your Timeline (with milestones). Knowing what to do is one thing, but doing it is a whole other challenge. Create a schedule of when you’ll learn what, including milestones to keep it from being overwhelming. Now you know when to set time aside to learn and ensure you’re on track to accomplish your goal.

Learning is such a valuable and necessary task for an IT professional who wants to keep up in a fast-pace, innovative world. As the chart above shows, the majority of your competitors are developing their skills so if you’re not, then you’re quickly falling behind.

Find the Happy Medium to Avoid These Programming Mistakes

Find the Happy Medium to Avoid These Programming Mistakes

Developers know that no matter how diligent and careful you are, when you least expect it, eventually things crash, and you find yourself in recovery mode. Even though every company and individual programmer has a few rules of thumb they follow, the worst can still happen.

Interestingly enough, a recent article in InfoWorld, written by Peter Wayner, points out that sometimes one developer’s “golden rule” is the extreme opposite of another’s. Neither are wrong, but taken too seriously and too far to the extreme, the worst can happen. Wayner demonstrates this theory by explaining the following programming mistakes:

Playing It Fast and Loose vs Overcommitting to Details

Overlooking basics brings out the simplest mistakes that then snowball into bigger bugs. In addition, using one big catch all for all possible exceptions can be a lazy solution that leads to more disaster. With that in mind, paying attention to every details and adding too much code will eventually slow down your application.

Not Simplifying Control vs Delegating Too Much to Frameworks

Not simplifying control over tasks in code can have negative implications. Wayner references one experienced developer who says there should be “One and only one place in the code for each job. If there are two places, odds are someone will change one but not the other. If there are more than two, the odds get even worse that someone will fail to keep them all working in the same way.” On the other side of the coin, relying too much on frameworks can make it difficult to troubleshoot because it’s challenging to find out what’s gone wrong in the code

Trusting the Client vs Not Trusting the Client Enough

Assuming the client device will always do the right thing can open up a number of security holes and vulnerabilities. Vice-versa, adding too much security to prevent any vulnerabilities is sure to slow things down, add clunkiness, and hurt the user experience.

Relying Too Heavily on Magic Boxes vs Reinventing the Wheel

Although extremely helpful, many magic algorithms have subtle weaknesses to them and the only way to truly get past them requires extra learning to truly understand what’s under the hood. You could try creating your own cryptography, but trying to re-invent the wheel won’t be as effective as what experts have already developed.

Closing the Source vs Opening Up the Project

Many developers today will advocate that closing the source on your project discourages innovation and hinders opportunity to uncover and fix bugs. In reality, though, there needs to be an incentive for outside contributors to put in the work and your project may not get any contributions at all. Not to mention there’s more overhead in managing an open-source project, like maintaining documentation.

Following Too Many Trendy Ideas vs Ignoring Too Many Trendy Ideas

Finally, who doesn’t want their project to be at the top of the game and taking advantage of all of the new bells and whistles? As you start implementing those new flashy items, beware that more work and challenges can arise because they’re so fresh. Don’t wait too long, though, because ignoring the trends will leave your code out-of-date and behind the times, which will eventually lead to bigger failures and malfunctions.

In any line of work, whether it be programming, other realms of information technology, or a complete other industry, flexibility is key. While it’s wise to follow best-practices, tunnel vision of those rules can guide you down the wrong path. We recommend reading the original 12 Programming Mistakes to Avoid by Wayner, as it provides extensive details on each of these.

10 Tips for Writing a Job-Winning Developer Resume

Recruiter Reviewing Job Applicant's ResumeWriting the perfect resume is not just time-consuming; it’s challenging. With a market that is bursting with talent, job posters can quickly receive hundreds of applications for the same project. Showcasing your skills in the best way possible is a practice in precision.

While there are different schools of thought on resume writing, web developers should be aware of a few critical factors. The best way to get an edge on the competition is with great style and well-presented information. Let’s take a look at what developers ought to do to craft a job-winning resume.

Formatting

As with any writing, utilizing good structure is important. Recruiters generally scan resumes to maximize their time during job searches. Therefore, using effective formatting can help get your resume to the top of the pile.

Consider organizing the information in your resume in this order:

  • Professional Career Summary
  • Skills
  • Work Experience
  • Projects
  • Software/technology programs
  • Education
  • Certifications

Today’s recruiters tend to prioritize good experience above all else. Your education and certifications still have value, but they don’t need to appear first on your resume.

Personal  information

Traditional resume formats included too much personal information. Clients don’t need to know your weight, height or eye color. While adding some personal data is necessary, it should only be the bare minimum.

Your name, title, email, phone number, and website are all you need to write on your resume. Although some are against it, feel free to include a photo of yourself. Depending on where your client is based, they might even expect to see your headshot in the top corner.

Professional Summary

Chances are if you are searching for a job, you have a LinkedIn profile. LinkedIn has made it the norm for job seekers to present themselves with a professional summary. These summaries allow you to quickly highlight your soft and technical skills as a web developer.

In summary, you provide recruiters an overview of your career. Thus, be sure to include how many years you’ve been in the field. Also, write about any tech programs you’ve completed in that time. If you were in charge of training or managing other employees add that, too.

Keywords

Using the right keywords isn’t just for top-notch SEO; it works for your resume, as well. Pay attention to the terminology clients use to describe a project. If you use the same terminology as them, you’ll have a higher chance of being selected.

Plenty of businesses use automated systems to sift through resumes and keywords are vital to their algorithm. Unfortunately, if your word choice doesn’t match with a prospective client’s criteria, your resume may be wholly passed over. Ensure that you get a foot in the door by fine-tuning the keywords in your resume.

Experience

The experience you include on your resume is a primary deciding factor for your candidacy. Remember to remove any irrelevant experience. Furthermore, remove any experience from over ten years ago.

Hiring managers want to see what explicitly makes you perfect for the position they are looking to fill. Write a short paragraph about what your main contributions were to previous positions. Also, highlight previous experience that directly connects with the project you are currently applying for.

Spotlight Projects

While experience is essential,  projects can also help prove your worthiness as a candidate. Especially, if you are entry level and don’t have much experience, yet. Whether it’s an internship or a freelance project, adding it to resume helps you stand out.

First of all, they show your dedication and drive. Second, they illustrate any unique skills you may have acquired. If your projects are online, include a link!

Education

Although your education has to be on your resume, it’s not as crucial as your experience or projects. One line descriptions will suffice. However, you can certainly include extra information if you feel it will be particularly interesting for the position.

Education must be in reverse chronological order. Additionally, ensure that you list any special programs, boot camps or courses you completed. Certifications can go here, as well.

Technical Skills

When arranging your technical skills, be sure to eliminate any that are outmoded. No one will be impressed if you say you know how to use Windows 95. Show that you are keeping up with the latest software and programs in this section.

Connect your knowledge to your experience and elaborate on how you used your technical skills in the real world. Recruiters will appreciate concrete examples. Also, label your skills with a proficiency level, but avoid saying you’re a beginner.

Interpersonal Skills

Although web developers’ primary skills should be technical, interpersonal skills are important, too! Clients will appreciate a programmer who is a people person. Show your interpersonal abilities by utilizing specific language.

Strive to include active verbs like delivered, organized or elevated. Showcase your sensitivity to time and your ability to work well with deadlines. Moreover, go into detail about any leadership roles such as training or leading projects.

Tailor Your Resume

It might seem like a no-brainer, but it’s essential that you adjust your resume for each job posting. Even though the jobs may be similar, you need to optimize keywords and reorganize every time. The relevance of your resume depends on it.

Furthermore, keeping your resume as up-to-date as possible is never a bad thing. After all, technology is continually evolving. Tailoring your resume for each job is an excellent opportunity to check that your information matches your current skills.

Conclusion

Once you’ve perfected all of your content, take care to adjust your presentation. Opt for a spacious set-up instead of cramming information in. Don’t get too caught up in whether your resume fits into a single page.

Instead, please pay attention to your content and ensure its scannable. A colorful and creative presentation can be eye-catching; however, don’t go overboard trying to impress. Do your best to incorporate these ten tips, and you’ll be on your way towards your next web dev position.

Kristin SavageKristin Savage is interested in writing and planning to publish her own book in the nearest future. Also, she has been a reviewer at Pick Writers for a few years and is known for her thorough approach to accurately assess newcomer translation services. You can find her on Facebook.

Fun Facts About Developers We Learned from the 2019 Stack Overflow Developer Survey

A couple weeks ago we shared statistics from the 2019 Stack Overflow Developer Survey that summarized the most popular technologies and tech trends among developers. Sure, these are helpful if you’re planning your career, but are you also interested how your opinions, habits and preferences compare to other developers world-wide? If so, keep on reading! (if not, keep reading anyway… it might be better than whatever else you were planning to do)

Developer Job Searching Experiences

Fun Facts About Developers We Learned from the 2019 Stack Overflow Developer SurveyOf the survey respondents who were from Canada, 74.7% were employed full-time and only 9.3% were independent contractors, meaning not all job search findings may be relevant or accurate for the IT contractor community. That said, these facts remain interesting in understanding what you’re up against during your next job search:

  • 3% of developers are satisfied with their current career and 65.7%, slightly less, are satisfied with their current job. Vice-versa, only 16.6% are dissatisfied with their career and 21.9% are dissatisfied with their current job.
  • 13% of developers are actively seeking a new job and 58.3% are open to new opportunities if they arise
  • When asked about the last time they updated their resume, nearly half (42.8%) said it was when they started preparing their job search and another 14.5% said it was only because they heard about a new opportunity. We recommend being part of the 32.8% who updated their resume because something changed in their experience.
  • Most commonly, successful interviews included a meeting with senior management, a meeting with other peers in the same role, and some sort of code-writing assignment. For those who dislike brain teasers, the good news is that only 19.3% reported having one of those in their last job interview.
  • Speaking of writing code, 14.7% of developers reported having to answer the FizzBuzz question. If you haven’t heard of that, it’s a growing trend and worth researching if you plan on job searching any time soon.

Common Work Habits Among Developers

Developers also share work habits and preferences once on the job. Here a few of our favourite facts from the 2019 Stack Overflow Survey results:

  • More than half of the respondents said they work from home more than once/month and 15.4% of respondents work from home more than half the time. That being said, 59.2% of respondents said they are happier at the office.
  • Canadian developers work an average of 40.2 hours per week. Compared to the rest of the world, the Netherlands have the shortest average week (38.1 hours) and Poland has the longest (44.6 hours).
  • 2% of developers believe they need to be a manager if they want to make more money and about a quarter of them would like a manager position in the future. 81% of developers are confident in their current managers.
  • Although stereotyped as introverted, 60% of developers prefer to have offline conversations rather than just online.
  • 8% of developers do code reviews because they see value in it, and another 7.6% only do them because they’re told to (the remainder don’t do code reviews at all). Most developers (62.7%) spend 2-5 hours per week reviewing code.
  • The greatest challenges to developers’ productivity are:
    1. Distracting work environment
    2. Meetings
    3. Being tasked with non-development work
    4. Not enough people for the workload
    5. Lack of support from management

Random Facts About Developers

Did you know that when it comes to online handle terminology, most developers prefer the word “username”? Here are a few other tidbits of knowledge for your watercooler conversation:

  • Developers are confident but some are lacking self-awareness.6% believe they are above average developers and 23.9% say they are average. Only 7.4% admit to being below average. Depending on your definition of average, statistics say that a few developers can’t be as great as they believe themselves to be.
  • A developer’s work is never done. Have you ever wondered why just because you can create an incredible app, people assume you can also make their printer work? You’re not the only one. Nine out of ten developers say they’re the IT support person at home.
  • Developers are not trendy when it comes to social media preferences. According to Buffer, Reddit is the world’s 13th most popular social network, yet it’s #1 among developers. The top 5 social networks among developers compared to the rest of the world are:
    1. Reddit (average: #13)
    2. YouTube (average: #2)
    3. WhatsApp (average: #3)
    4. Facebook (average: #1)
    5. Twitter (average: #12)

Now that’s a lot of data! How do you compare to the tens of thousands of developers who responded to the survey?

7 Skills to Have if You Want to be an iOS Developer

You may have heard of this iOS operating system before — it’s pretty popular with the kids and their iPhones these days.

Obviously, developers who specialize in iOS continue to grow in demand as companies and organizations in all industries regularly innovate their mobile strategies to remain ahead of the curve. For an aspiring IT professional, or a seasoned one looking to diversify their skillset, developing the right skills to be an iOS Developer is a sure way to open up more opportunities.

If you’re working on your checklist of skills to learn or improve and have any interest in Apple’s operating system, then this video from ForrestKnight is worth a watch. In under 10 minutes, he goes through the top 7 skills you must have if you want to get into that field.

20 Great Job Interview Tips from 3 Great Sources

When it comes to job interviews, you can never get too much help. Once again, we’ve rounded up the latest tips from some of the most experienced sources when it comes to developer jobs and interviews.

Glass Door’s Job Interview Checklist

Job InterviewGlassdoor is a leader in reviewing companies’ cultures and helping people find jobs at organizations with the best fit. That’s why we’re starting with their interview checklist that guides a job seeker through the process, from the second you get the interview to the days following it.

  1. Study for your interview like it’s a final exam
  2. Generate a list of potential interview questions (and their answers!) beforehand
  3. Write out answers to every question you anticipate, and practice delivering them out loud
  4. Compare your skills and experience to the job description
  5. Be rested and healthy for the big day
  6. Dress for success
  7. Empower yourself
  8. Don’t leave any unnecessary unknowns
  9. Keep an interview journal
  10. Follow up

Simple Programmer’s Top Ways to Behave in a Developer Job Interview

Marcell Lipp has five years of work experience as a software developer and blogs about his experience surviving as a programmer. Lipp recently posted on Simple Programmer with these 6 tips for how to behave in a developer interview.

  1. Stay Calm and Confident
  2. Never Lie About Your Knowledge
  3. Evaluate the Company as Well
  4. Don’t Stress Before the Interview
  5. Buy Time During the Interview
  6. Try Your Best and Be Prepared for Your Interview

Lessons Learned from Dice’s Horror Stories

Dice published a semi-humourous/semi-horrifying article with horrible stories from tech interviews. With each story came a lesson and these are four extremely relevant ones for any technology professional.

  1. Prepare for high pressure
  2. Don’t lie about skills and experience
  3. Never argue… even if you’re right
  4. Don’t Bring Your Parents

Noticeably, many of the tips and advice repeat within each source, highlighting their importance. Also, these lists merely tease the details and clicking through to any of these links will give you much more valuable advice and information on how you can apply it. If you come across any helpful resources, we’d love to see them so we can continue to share expert knowledge from around the world on the Talent Development Centre with IT contractors and other job seekers.

Does Everyone Really Need to Learn to Code?

As an IT contractor, you will not be surprised to hear that experts forecast a surge in programming jobs for many years to come. Consumers are continuing to demand new technology at increasing paces and IT companies will meet or exceed those demands so they can remain competitive. The result is a common train of thought that everyone should learn how to code because their job is going to require it. Even on this blog, we’ve made this argument and a recent quick poll proves that many IT professionals agree.

But this video from PolyMatter has a different opinion. Instead, they argue the push for teaching everyone to code is strictly political and, in fact, a developer role is nothing more than a skilled career path like a surgeon. “It is just a job, not a basic universal skill.” What do you think? Should everyone learn to code?

Contractor Quick Poll: Do you participate in the Developer Community?

Development trends and best practices are always evolving. There will always be new coding languages, advancements in technologies, and user behaviour trends that drive a need to change. Essentially, there will always be new problems and need for innovation.

Developer communities help overcome many of these challenges by opening up networking and providing the ability to share and work on solutions together. In this month’s contractor quick poll, we’re curious to know how developers participate in communities, if at all.

GitLab’s Glance into IT Organizations

Developer surveys are fascinating as we gain insight directly from IT professionals and find out exactly what makes them tick. They show us trends in our industry, help us determine if there is greener grass on the other side of the fence, and sometimes just provide some interesting tidbits of information. We recently shared some results of Stack Overflow’s annual Developer Survey and since GitLab also published results of a similar developer survey, it only make sense we share that as well.

GitLab surveyed over 5000 IT professionals from around the world, ranging from the most junior developers to veteran software professionals. While the results garnered a variety of conclusions, these are our favourite highlights:

There are Some Distinct Qualities of a High Performing IT Team’s Culture

It takes all kinds of inputs to create a high performing team, but GitLab identified five specific qualities that their cultures all share:

  1. A DevOps culture
  2. Better access to best tools
  3. Less time context switching
  4. More likely to be using cloud-based tools
  5. Leaders make automating SDLC a top priority

The DevOps culture may be of a specific interest to you, or even come as a surprise, depending on your preferred methodology. GitLab did dive deeper into the DevOps vs Agile topic, and we’ll summarize those findings in a separate post later this month.

Developers and Management Don’t Always Agree

To add different twist, GitLab asked questions to both managers and developer and compared responses. While they weren’t always far off, it is clear by these findings that there is often a disconnect between the two groups:

Statement Developers Who Agree Managers Who Agree
Project expectations and requirements are not set up front 31% 23%
Practicing Continuous Integration (CI) alleviates blockers in the development process 84% 90%
Automating more of the SDLC is a top priority in the organization 55% 78%
Developers have access to the best development tools 74% 81%

Developers Around the World Feel the Same Pain Points

Finally GitLab also asked respondents about their biggest challenges and delays. The charts below show that, regardless of the type of organization and where they are in the world, we’re all experiencing similar set-backs:

GitLab Findings

A Look at How Developers Think (thanks to Stack Overflow)

Early last month we shared some results from the 2018 Stack Overflow Survey that showed trends in the most used technologies and what jobs bring in the most money for developers. That’s all great, but you see those trends all the time. Fortunately Stack Overflow also asks its respondents some more unique questions which results in interesting findings about the way developers think. Here are a few of our favourite highlights:

Belonging and Career Satisfaction

Apparently, life as a developer is like a fine wine: it gets better with time. The survey asked respondents about their kinship or connection with other developers, the competition they feel at work and if they feel their peers are better than them. The results are clear. As developers get more experience, life becomes better at work, with less competition. This is in line with some additional findings in the survey, that showed career satisfaction is more prevalent among older developers (ages 50+) who have more than 20 years of professional experience.

Belonging and Career Satisfaction

Ethics

Stack Overflow also took a dive into the topic of ethics this year and the good news is, most developers say they are ethical professionals when considering what projects to take on. More than half of developers surveyed say they would refuse to write code for unethical purposes and another 36.6% said they would carefully consider what it is before agreeing to do so. Unfortunately, there are still 4.8% of developers out there who would have no problems writing code for unethical purposes.

If developers were to discover unethical code, nearly half would report it and about 75% of them would keep it within the company. Most of the rest say it would depend on the situation, but there remain that 5% who would will look the other way.

While few developers believe that they would be ultimately responsible for code that accomplishes something unethical, the good news is that about 80% of developers do agree that they have an obligation to consider the ethical implications of their code

The Future of AI

Finally, Stack Overflow took an interesting look at where developers believe Artificial Intelligence is going and what effects it will have on our future. While many are excited about the potential, such as increasing automation of jobs and algorithms to make important decisions, others are concerned about those very same things and believe it to be dangerous. In general, more than 70% of developers are more excited about AI’s possibilities than its dangers.

What Developers Think About AI

This is just the tip of the iceberg of what you’ll find in the 2018 Stack Overflow survey. Check out their website for more information, such as how developers are looking for jobs, demographics of developers around the world, and career-specific information.