Now this is going to be a very lengthy discussion, and I can only put in my two cents. I hope the community (YOU) can also add to this constructively, and we will keep posting more about this issue.
People, and fresh engineering grads, are becoming deathly afraid of becoming labelled as “coders” in Pakistan, and this is an Issue that I think needs resolution at large. Lets put a basic complaint aside: this issue isnt one of salary – it is with the mere act of actually having to write, read, or otherwise deal with source code.
I’ll be frank in saying this puzzles me. Why are more and more kids from Fast, Lums, Nust expecting to immediately get into higher end tech jobs without being willing to experience the entire SDLC? Why do they feel proud in thinking that “coding” jobs are more suited to people from other (and perhaps “lower”?) univs?
The question I want to ask today is, how did this general aura of misconception and fear regarding coding jobs develop in the first place, what is the impact this is having to the industry, and what are the ways of crossing this chasm?
Another similar issue is with all of these kids who graduate from a basic Engineering degree, and head immediately into an MBA marketing, and start expecting middle management jobs such as Product Management as a result of it. Their take is always that the two degrees by default have given them enough expertese in the tech industry to be able to take up those jobs.
That is clearly wrong, because it is really the guts of looking at the myriad of customer issues during the entire lifecycle of projects that prepares individuals for managing decisions. The MBA can only give them a frame of reference to start that decision making process.
Before we go into my own two cents, however, lets go through the general POV of both sides:
Here is the student / employee perspective that I have heard:
Ã¢â‚¬Â¢ coders are unable to become a force that contributes to the success / growth of a company
Ã¢â‚¬Â¢ coders are typically disrespected within companies in that their input is not weighted very highly
Ã¢â‚¬Â¢ coding immediately limits your career growth
Ã¢â‚¬Â¢ coding jobs are non-rewarding because no one within the org recognizes and congratulates the efforts
Ã¢â‚¬Â¢ Most of coding today involves simply configuring tools, or using toolkits and frameworks to rapidly put together things.. these do not suit our intelligence anyway.
Ã¢â‚¬Â¢ “No Im not interested in coding in the least… I just studied Bsc be.cause I hear the IT industry pays well, but hey! Im worth more than coding because all of my friends think so… the IT companies should tnus give me high end work”
Ã¢â‚¬Â¢ (worse) “Look, I know in my MBA they taught me all about consumer goods, but my BSC means that I know everything abt technology, so I deserve a high end job in the industry”
Here is the employer / management perspective that I have heard (regarding people shying away from coding jobs):
Ã¢â‚¬Â¢ The kids coming in are not interested in becoming a member of an industry of professionals – they ask too much with too little experience
Ã¢â‚¬Â¢ We serve customer projects that are too important and sensitive for the design and arch to be left to new grads – I wish we could find competent people who can design apps well but they are far too rare
Ã¢â‚¬Â¢ Given the high turnover rate of this industry, people are jumping jobs every 5-6 months anyway… we will just find a way of getting the work done from them by having them do the minor coding to get the job done
Ã¢â‚¬Â¢ A lot of these kids expect exorbitant salaries because they expect the investment in their education to pay off immediately, but no one has taught them that ROI is a gradual process and proportional to the amount of investment (i.e. the higher the salary, the longer it will generally take to get ROI)
Ã¢â‚¬Â¢ None of the kids in general present any business case or good justification of why they are a good product to invest in… they are not even self-aware, yet just demand whatever they see their friends do
Ã¢â‚¬Â¢ “I am trying to run a business… none of these kids understand their roles in professional businesses anyway so they should just code”
Ã¢â‚¬Â¢ (worse) “respect? Well, respect is earned!” (when said about internal resources)
See the gap? One of the biggest issues is this lack of clear panel-based discussion among the industry stakeholders, and more and more people could use blogs as such a medium
Very few companies here actually take feedback from their employees, and very few employees give objective feedback (instead they make it into a “hissy whine” service like “companies should have free orange juice… it encourages coding” or “companies should give a day off on all major cricket matches”)
Very few fresh grads are seeking career advice from the right people, such as industry veterans or professional career counselors… instead a lot of kids are taking career advice from the wrong type of people : parents and friends.
Why are parents and friends the wrong people for advice? Well they are not always wrong – especially if your parent is an industry veteran. However, these people will be too biased towards your benefit alone that they might end up encouraging the wrong type of behavior. I know I have cringed at a job applicant saying “well, I discussed your offer with my friends, and they think I should be getting twice of this – so Give me that” Ugh.
A professional career counselor will give you advice that will actually help in your career in the industry by teaching you about the type of behavior that helps you succeed.
We’re digressing though. Why are people running away from coding jobs? My take is the following:
Ã¢â‚¬Â¢ Companies continuously fail to flatten their job roles. Job roles are in no way an indication of the importance of someone – the amount of liability on you is. Yet companies continue to treat design, architecture, development, testing, usability, ergonomics, marketing and sales as diffferent “levels” of people, and this creates the wrong type of DNA and culture
Ã¢â‚¬Â¢ Both companies and employees are trying to create the wrong DNA. This is again a corporate culture issue, but too many companies will go around trying to make an internal environment like Merryl Lynch or ABN Amro when they only need to be like Google or Ebay. In other words, they are just creating an internal culture that might be too closed and restrictive for a technology business anyway. This creates the false impression that “non-manager” is worthless and not important enough to listen to.
Ã¢â‚¬Â¢ Employees and grads stop learning outside of school. This goes down to basics, and extend what I said above. very few people look at anything outside of a formal course and certification to be a learning experience. If they did, our industry would not believe so blindly in “certifications”, because if they did they would be able to defend what they learn in interviews.
Ã¢â‚¬Â¢ Employees and grads isolate coding as an independent activity of the technology value chain. This might make sense if managers thought like that, but it is dangerous for engineers to think this way. More on this below.
The impact of this is too striking and clear to miss. Our industry keeps chugging along with outsourced work but as the margins on that keep shrinking we are soon going to realize that there are actually very few engineers here that can actually do any high-value work.
The reasoning is simple enough:High Value work is proprietary, and being proprietary involves parts that require pure engineering – not just testing or maintenance but actually creating algorithms, data management and security schemes, and more.
Before people can be trained to do that, I argue that they need to know their programming. How can you be an architect, designer, system anaylst, usability expert, without understanding precisely the codebase, technology stack, and engineering lifecycle you will be asked to support?
What you might call “coding”, then, I call the basic building blood and DNA of great engineers – the engineers who deserve high salaries and recognition. Its like that joke about the doctor who tells his patient he cant treat her because he left a certain subject as an elective.
I feel strongly that a nation is built on the quality of their engineers, because that professions’ spirit resides in creating solutions to the problems that affect people.
Often I feel that over time we are heading to a point of paralyzing our ability to actually create any solution at all. With more people thinking they are “better” than coding this problem will only be exacerbated.
Here are my recommendations for people who want to take a serious step towards a solution.
Ã¢â‚¬Â¢ Companies should invest in building a strong DNA. Culture is an investment, and the returns are vague, but I can tell you from my operations consulting experience that the returns can be massive and rapid if it is done right. At the minimum, company leaders should empower HR to evangelise a certain credo internally, as well as incentivise internal evangelists to lead your change. Typically though, you should think of training your middle managers on professionalism and mentoring employees and set policies that mandate mentoring, equal opportunity and distributive right for all employees. Companies that do it right, such as Rozee.pk, can perform fantastically even with a small team.
Ã¢â‚¬Â¢ Employees and fresh grads should seek professional career counseling and placement offices. This can be an invaluable asset in helping you find your perfect jobs. The consellors can use their contacts to help place you in good companies, and also follow up with the right amount of guidance and support. From what I hear the people at Brightspyre do this at their offices.
Ã¢â‚¬Â¢ Companies should hire motivational speakers. It is important for engineers and employees in general to get a quick broader perspective of how technology is shaping society, and for them to believe in the value of their experiences. One professionally delivered speech by people who know the art of capturing and moving audiences can be very effective. The CDF Professional Coaching Center offers motivational speaking products.
Ã¢â‚¬Â¢ Companies must demand that their employees grow every three months. This is again easy to do, but companies need to set clear objectives for all employees ina quarter that helps them advance further in their careersc This is not always a job role shift, but can be implemented using non core programs (see my post on Multidimensional Employees as an example). This will allow everyone to look at the coding experience as a part of a larger growth ladder
Ã¢â‚¬Â¢ Companies must implement some degree of rotational Management Training programs for all employees that spend 1 year with the firm showing excellent performance. This can have a huge impact on turnover and job alignment, and all good companies outside of IT have them in place. iT companies should stop looking at everything as an overhead, and hire operational consultants to do this who actually know something about organizational development. I could refer some if you asked me.
Ã¢â‚¬Â¢ Finally, all employers should adopt formal behavorial interviewing techniques in their hiring process. This industry doesnt reward actual knowledge, but the impression of actual knowledge, which is basically a notion that follows the principles of scarcity. If you, the candidate dont actually know the subject, just speak very little actual knowledge and just show off a lot with big buzzwords, and you might get the job just by showing off your ego. People who actually know something about a subject debate openly in blogs and might be too humble to show themselves off in person (ahem…). Companies need to train thei HR Managers on structured behavorial and functional interviewing that can weed out the people who actually know a subject with people who dont. Its not simply about asking your engineering lead to test the programming candidates, you need to build a team of tough ice-cold professional interviewers for this. Again, I can refer some great trainers to companies for this.
Phew, now thats a few days worth of writing finally up on the blog. If you also believe in the importance of having a panel discussion on this topic, open up!
Please write your thoughts and ideas (LUMs people: I’d like to hear your down-to-earth thoughts, but be constructive!). Spread the word… get your uncles and friends and business colleagues who are stakeholders to come here and participate and share their expert opinions too.