What I learned about software developers in Bangladesh from the 2019 StackOverflow survey
Introduction
I have been playing with this year’s StackOverflow developer survey data, after they made it publicly available. And was trying to learn more about the developer community of Bangladesh. In this post I present what I’ve learned from analyzing the data.
In the survey, there were 605 entries from Bangladesh. On average the survey took 25 minutes to complete. And I think those who participated in the survey are more or less representatives of the Bangladeshi developer community.
Key points
If you don’t feel like looking into lots of charts right now, here is the gist for you.
- Lack of support from management is one of the key productivity challenges in Bangladesh.
- There is little relationship between developer’s salary and experience.
- The approval rate of the managers is surprisingly high compared to some other countries.
- Majority of the developers want to become manager in future, a trend that we don’t see in the IT-developed countries.
- We are aware of our abilities; majority of us don’t think we are above average. (Are we really? Read on for details.)
- Majority of the developers are satisfied with their current job, and overall career.
- Those who are actively seeking jobs, switched their last job not more than 2 years ago.
- Opportuniteis for professional growth, and company culture is the most imporant factors for job seekers
- Developers are self learners, most of them are teaching themselves languages, frameworks, participating in MOOCs etc.
- Javascript is the most loved, Python is the most wanted language; and React is the most wanted framework.
- Majority of the companies don’t employ unit tests.
- Majority of the developers do code reviews as they see value in doing so.
That was the summary, now if you are like me, who believes data is beautiful, read on.
Basic information about the respondents
Developer types
Two thirds of the participants are professional developers.
Years coding professionally
About half of the respondents are professionals with 2-5 years of experience. And about a quareter are with more than 5 years of experience.
Years since learning to code
Writing that first line of code
Comparison of the average age of writing that first line of code across some countries.
As we see, we are pretty late when it comes to writing that first line of code. Most of us haven’t written Hello World!
before
we finish higher secondary.
Coding as hobby
Let’s now compare how much we consider coding as our hobby with some other countries.
Ok, so majority of us spend our leisure time on coding, like many other countries. Although, I think it doesn’t indicate anything regarding how good or bad the developer is. I believe one can be a good developer without having coding as a hobby.
Contributing to open source softwares
I find this pleasantly surprising. I never thought I would find 22% of the respondents from Bangladesh contribute to some open source software once a month or more often. As a developer with more than a decade of professional experience, I feel guilty of not doing so. More because
I am using open source software every single day. I want to contribute, but find it difficult to start.
Kudos to you if you are a opensource contributor!
Non-degree education and learning
Although I don’t show it here, majority of the developers in Bangladesh have a B.Sc. with CS related major. Let’s see here what non-academic type learning we involve in.
This confirms my belief that we, the developers, are lifelong learners. We enjoy learning new things. And we continue the learning process by ourselves, whether it is a new language/framework, or whether by participating in a MOOC.
Feeling of competence
In the survey there was a question,
For the specific work you do, and the years of experience you have, how do you rate your own level of competence?
Statistically, it is impossible that majority of any group are above average. Let’s see how we answered that.
Ok, so around half of us think we are above average, which is not so bad. If we compare this across some other countries we can see surprising result!
Wow! We seem to have a good idea about our abiliteis. I find it a bit hard to believe though. So I dig deeper, and plot the data a bit differently. This time comparing the thought of being above average vs the developer’s experience.
Yes, now I find what I was seeking. As we get more experience, we tend to inflate our abilities. We probably forget that, it’s not only me, other developers are also getting more experience. The developers in the group of 11-20 years experience in Bangladesh believe 84% of them are better than average! Are you aware of Illusory superiority and Dunning–Kruger effect?
Salary
The first chart I want to show about salary is by plotting individual salary data vs experience in a scatter plot. (3% from the top and bottom part of the data is removed here.)
Ok, it’s all over the place. There is no structure at all, and there is no direct relationship between one’s experience and salary. It is not unique to Bangladesh, I’ve seen similar chart for other countries as well.
But wait, all is not lost. If we plot the data by grouping the experience, and taking the median salary we can see the median salary is somewhat rising with experience, upto a certain point.
Software development is a competitive field. Most of the companies don’t want to limit themselves when hiring, by imposing some structure on the salary vs the candidate’s experience. So there is a strong chance that even if you are junior, you can make more than some seniors, if you are productive, and can produce value for your company. And we should not take it for granted that our salary will rise as we get more experience. It probably will, but not automatically, you’ll have to earn it.
As there seems to be a lack of structure, here’s one tip for developers who are seeking jobs. If possible refrain from mentioning your current and expected salary when asked. Instead request the employer to take your interview first, and come up with their best offer once you passed.
Development practices and productivity
Let’s see how we are doing in terms of development practices, and also what hinders our productivity.
Code review
So most of us are doing code reviews as part of our work, and we also see the value of it.
Unit tests
Unfortunately, less than one third of the companies employ unit tests as part of their process. I am personally not a huge fan of unit tests myself, although I see the value in it, especially when refactoring some part of the code.
Greatest challenge to productivity
When asked what are the greatest challenges to developer’s productivity, we see the following.
Distracting work environment is the main culprit here. This is similar for most other countries as well.
Open office plan is killing developer's productivity.
If you don’t believe me, ask DHH.
If you are the key decision maker in your company, you should seriously evaluate this. You don’t have to do it just because Facebook did it, maybe you copied half of the things and forgot the rest.
What about the next one? Lack of support from management is also a greatest challenge to productivity in Bangladesh. Seriously? I thought the managers are there to help us be our best? Why should their support be lacking? Who’s benefit they are considering when they are not supporting the developers properly? The company’s? This is sad.
When I compare the lack of management support with other countries I see this.
This is unfortunate. Most of our managers are lacking considerably when it comes to support the developers, compared to the countries which have more mature software industry.
To all the managers who are reading this post, please evaluate yourself in terms of how you are supporting your developers. Talk to them openly, about how can you improve. Talk to managers from other companies that you know are doing good. I am sure you will find there are cetain things you can change to support your developers more. None of us is perfect. Finding out one’s shortcomings and continuous improvement is the key to success.
Career values
The survey asked about the current job satisfaction, and overall career satisfaction.
Job satisfaction
It seems about half of us are satisfied with our current job.
Career satisfaction
And around 60% of us are satisfied with our overall career. Let’s compare career satisfaction across different countries.
Ok, developers from other countries may be a bit more satisfied about their career. But we are not that much behind.
Management
The survey asked some questions about whether the respondent approves of his manager, or in future whether we want to become manager or not.
Manager acceptance
The survey asked,
How confident are you that your manager knows what they’re doing?
Surprisingly, it seems majority of us think our mangers know what they are doing. (Is this a bit contradictory with the lack of support point that was made earlier? Maybe, maybe not, I don’t know.)
Fun fact, in the stack overflow data this column is called MgrIdiot.
Need to become manager to make more
This is not surprising, half of us think we need to become manager to make more.
Wanting to become manager
And almost two thirds of the respondents want to become manager in future. Let’s compare this with some other countries.
I want to believe the majority of those who want to become managers are passionate about management. I know that would be a fallacy though. I think the majority of them want to become manager because they will get better salary and benefits. Sad, but that’s how it is in Bangladesh.
I think companies should create technical positions for developers, who do not manage project or people directly, but takes key decision in technical implementations. And also evaluate them appropriately. So that, developers who are not really passionate about management, have alternative career path.
And my request to these two third of the developers who want to become manager, when you do become manager, please support the developers to become their best. So that we can see lack of support from management is no longer a challenge to productivity in Bangladesh.
Technology stack
Most commonly used language
Yes, Javascript rules!
Most loved language
Again, we love Javascript!
Most wanted language
But if it was upto us to chose, on which language we like to work next year, majority would chose Python or Go.
Most dreaded language
And HTML/CSS is most dreaded closely followed by PHP, not at all surprising.
Most commonly used Web frameworks
Most loved Web frameworks
Most dreaded Web frameworks
Most wanted Web frameworks
So jQuery can be, at the same time, the most used, loved, and dreaded web framework in Bangladesh. But the crown for most wanted web framework goes to React!
Other tech stats
I omitted some other statistics about technology, if you are interested please check the charts here.
Job search
Current job seeking status
Most important job factors while seeking jobs
So it seems, apart from technology choice, most developers are concerned about the company culture, and opportunities for professional growth.
Job seeker’s stability
Among active job seekers, half of them switched their job not more than 2 years ago. Maybe they haven’t found their dream company yet, or maybe job seeking is also a hobby for some, who knows.
Miscellaneous stats
Social media use
As expected, Facebook is the social media most developers use in Bangladesh. Although, Reddit is the most popular social media among the developer communities worldwide.
Sexual orientation
Hmmm….
Better life
I would like to conclude the stats with this one.
I love this result. Even with so many challenges in Bangladesh, two third of us believe that people born today will have a better life than their parents. This fills my heart with joy. I know it will not happen magically, we have to make it better, but believing is the first step.
Conclusion
If you have read this far, thank you very much for your time. I feel the time I spent analyzing the data, and writing this post is well spent. As a part of the developer community of Bangladesh, I hope you will do your best to move the industry forward.
Lastly,
- I hope our local industry grows, in such a way that, developers don’t have to become managers just for the sake of better benefits. Rather, they become managers because they are passionate about management.
- If you are a manager now, identify how you can help your developers become more productive.
- If you are a developer who want to become manager in future, keep in mind all the challenges that you face now, and make sure those are not repeated for the developers working under you.
- Participate in the next Stack Overflow survey when that happens, so that we can learn more about our profession.
Appendix
If you haven’t already, check out the main survey results. And if you want to customize/play with the data yourself, you can find my project, including the code here.