Two kinds of immigration

There are fundamentally two kinds of immigration – local job-creators and local job-competitors. The former are primarily middle and upper middle class people, who create jobs locally in terms of employing people (directly) to provide services for them – like maids, cooks, drivers, laundrymen, etc. The latter are primarily working class people who migrate in order to provide local services. They work as maids, cooks, drivers, etc.

Already existing local service providers welcome the immigration of job-creators. That means they now have the opportunity to push up their asking prices, since there is now more competition for their services. There is little economic opposition to the immigration of job-creators. The opposition to them is usually cultural – witness the rants of middle class “native” Bangaloreans like me against “koramangala people”.

Job-competitors, on the other hand are not so welcome. While they usually don’t contribute too much to the “culture” of the city, they compete directly economically against already existing local service providers. There is a clear economic rationale for local service providers to oppose the entry of more such providers, and since the local service providers are usually numerous and politically active, it is easier to oppose the entry of such job-competitors.

In the 1960s, for example, Shiv Sena started out by targeting South Indian middle class people. However, that campaign didn’t last long, since the “masses” (mostly local service providers) realized that it was economically counterintuitive for them to target middle class people. Hence, gradually over time, the rhetoric changed and the targets are now immigrant job-competitors. So you have Shiv Sena guys beating up Bihari taxi drivers, etc. And since this targeting of immigrant job-competitors is economically advantageous to the “masses”, it is likely to be more sustainable than the targeting of immigrant middle class people.

Data Science and Software Engineering

I’m a data scientist. I’m good with numbers, and handling large and medium sized data sets (that doesn’t mean I’m bad at handling small data sets, of course). The work-related thing that gives me most kicks is to take a bunch of data and through a process of simple analysis, extract information out of it. To twist and turn the data, or to use management jargon “slice and dice”, and see things that aren’t visible to too many people. To formulate hypotheses, and use data to prove or disprove them. To represent data in simple but intuitive formats (i.e. graphs) so as to convey the information I want to convey.

I can count my last three jobs (including my current one) as being results of my quest to become better at data science and modeling. Unfortunately, none of these jobs have turned out particularly well (this includes my current one). The problem has been that in all these jobs, data science has been tightly coupled with software engineering, and I suck at software engineering.

Let me stop for a moment and tell you that I don’t mind programming. In fact, I love programming. I love writing code that makes my job easier, and automates things, and gives me data in formats that I desire. But I hate software engineering. Of writing code within a particular system, or framework. Or adhering to standards that someone else sets for “good code”. Of following processes and making my code usable by some dumbfuck somewhere else who wouldn’t get it if I wrote it the way I wanted. As I’d mentioned earlier, I like coding for myself. I don’t like coding for someone else. And so I suck at software engineering.

Now I wonder if it’s possible at all to decouple data science from software engineering. My instinct tells me that it should be possible. That I need not write production-level code in order to turn my data-based insights into commercially viable form. Unfortunately, in my search around the corporatosphere thus far, I haven’t been able to find something of the sort.

Which makes me wonder if I should create my own niche, rather than hoping for someone else to create it for me.

Why You Should Not Do An Undergrad in Computer Science at IIT Madras

I did my undergrad in Computer Science and Engineering at IIT Madras. My parents wanted me to study Electrical Engineering, but I had liked programming back in school, and my JEE rank “normally” “implied” Computer Science and Engineering. So I just went with the flow and joined the course. In the short term, I liked some subjects, so I was happy with my decision. Moreover there was a certain aura associated with CS students back in IITM, and I was happy to be a part of it. In the medium term too, the computer science degree did open doors to a few jobs, and I’m happy for that. And I still didn’t regret my decision.

Now, a full seven years after I graduated with my Bachelors, I’m not so sure. I think I should’ve gone for a “lighter” course, but then no one told me. So the thing with a B.Tech. in Computer Science and Engineering at IIT Madras is that it is extremely assignment incentive. Computer Science is that kind of a subject, there is very little you can learn in the classroom. The best way to learn stuff is by actually doing stuff, and “lab” is cheap (all you need is a bunch of computers) so most courses are filled with assignments. Probably from the fourth semester onwards, you spend most of your time doing assignments. Yes, you do end up getting good grades on an average, but you would’ve worked for it. And there’s no choice.

The thing with an Undergrad is that you are clueless. You have no clue what you’re interested in, what kind of a career you want to pursue, what excites you and the stuff. Yes, you have some information from school, from talking to seniors and stuff, but still it’s very difficult to KNOW when you are seventeen as to what you want to do in life. From this perspective, it is important for your to keep your options as open as they can be.

Unfortunately most universities in India don’t allow you to switch streams midway through your undergrad (most colleges are siloed into “arts” or “engineering” or “medicine” and the like). IIT Madras, in fact, is better in that respect since it allows you to choose a “minor” stream of study and courses in pure sciences and the humanities. But still, it is impossible for you to change your stream midway. So how do you signal to the market that you are actually interested in something else?

One way is by doing projects in areas that you think you are really interested in. Projects serve two purposes – first they allow you to do real work in the chosen field, and find out for yourself if it interests you. And if it does interest you, you have an automatic resume bullet point to pursue your career on that axis. Course-related projects are fine but since they’re forced, you have no way out, and they will be especially unpleasant if you happen to not like the course.

So why is CS@IITM a problem? Because it is so hectic, it doesn’t give you the time to pursue your other interests. It doesn’t offer you the kind of time that you need to study and take on projects in other subjects (yeah, it still offers you the 3 + 1 months of vacation per year, when you can do whatever you want, but then in the latter stages you’re so occupied with internships and course projects you’re better off having time during the term). So if you, like me, find out midway through the course that you would rather do something else, there is that much less time for you to explore around, study, and do projects in other subjects.

And there is no downside to joining a less hectic course. How hectic a course inherently is only sets a baseline. If you were to like the course, no one stops you from doing additional projects in the same subject. That way you get to do more of what you like, and get additional bullet points. All for the good, right?

After I graduated, IIT Madras reduced its credit requirement by one-twelfth. I don’t know how effective that has been in reducing the inherent workload of students but it’s a step in the right direction. Nevertheless, if you are going to get into college now, make sure you get into a less hectic course so that the cost of making a mistake in selection is not high.

Compensation Etc.

For a change I’m keeping up a promise that I’ve made on my blog – I’m actually writing a follow-up post that I’d promised. In the past, I’ve guilty several times of promising to continue something in a follow-up post and then conveniently forgetting about it.

So I had mentioned in my last post that the word “compensation” as used to describe salary is not really misplaced. There has been a lot of debate on this topic. The opponents of the word have said that you aren’t losing an arm or a leg in order to be “compensated”. They say that you are only getting paid for the value you add, and so the use of the word “compensation” is plain wrong. I must admit I haven’t really bothered to read the arguments of the people who support the use of the word.

The basic fact: you work because you need the cash flow to fund the rest of your life.

I know a lot of career-minded folks among you will jump on me for this, but I stand by this. Just get down a little deeper, and ask yourself why you are doing what you are doing. Maybe you don’t get the kind of questions in your head that I normally do, and described in my previous post. Maybe your jobs have put you in the kind of comfort zone where you don’t really need to ask yourself such questions (I was in a similar state not too long back, I must admit). But I encourage you to make that effort and ask yourself this uncomfortable question. And it will be down to the money.

You might say that you are doing some stuff “for the sake of career development”. Rephrase that and you will find that you are doing that in expectation of higher future earnnigs. You might say that you are doing something because you want to “achieve something”. Dig deeper and you may find that you define the fruit of your achievement in monetary terms.

So where does “quality of work”, “impact on society”, “value add”, etc. all fit in? I know that in the not-so-distant past, I’ve also talked a lot about these things. I have rejected a number of potential job offers because I don’t like the “quality of work”. This definitely needs to be incorporated into the model, right?

The next basic fact: work is inherently unpleasant.

I don’t think I’ll spend too much time elaborating this here. Maybe I’ll explain this in the comments if you want. So this is where things like “quality of work”, “value add” etc. all fit in – they make work so much less unpleasant. For example, I enjoy spreadsheet modeling. So if my work involves a lot of spreadsheet modeling, I’ll feel so much less unpleasant doing it. Of course, what I am doing remains “work” and it has to be done, in a certain way by a certain day, and so it remains unpleasant. But the fact that I enjoy the core activity makes it less unpleasant.

Similarly, if you think that the work that you are doing gives you a sense of achievement, then it is as if you are doing a part of the work for yourself, and not for someone else, and thus need to be compensated less. “Compensated less”. So this is where it fits in. You get “compensated” because work is inherently unpleasant. You need some incentive to do the stuff that is inherently unpleasant. So you get compensated.

You may have to live in a city that is not your preferred choice – you need to get compensated for that. You may face an extremely long commute where you waste your time – you need to get compensated for that. You might have to work long hours which can intrude on your personal time – you need to get compensated for that. You may have to deal with lousy colleagues or customers, you need to get compensated for that. The list goes on. And if you think about it, a large part of the money that you get out of your work is just that – compensation. Compensation for your time, your effort, your mindspace, your willpower, etc.

So why work at all, you might ask. Go to basic fact one. You work because you need the money. You are in a certain job because you believe that after compensating for all your “sacrifices” for the job, it will leave you with some more money to fund your life. If you think that the money your job leaves you if you take out the “compensation” part of it is lower than what you need to sustain life, you need to question why you are doing that job.

Investment bankers (the inside the wall type) usually end up spending a lot of their time at work, and despite the reasonable bonuses they get, they might feel they are not being compensated enough. They are doing it because they expect that when they ultimately get promoted they will make enough and more to cover for all this unpleasantness. It is basically an “investment”. If, however, you think you are in a job where you are inadequately compensated but don’t see any hopes of significantly higher compensation in the future, you are cheating yourself by not looking for another job.

This also explains why it is a bad thing to compare your salary with your peers and your old classmates and then feel good or bad about it. No two people have the same needs. No two people find the same things unpleasant to the same degree. No two people make the same trade-offs. Comparing your salary with you peer gives little information.

On a closing note (I know it’s already monstrously long) I find the phrase “work-life balance” amusing. I think it is a construct brought about by the pigs so as to con the sheep into workign harder for them. There is no “balance” between life and work. Life is the master and work is the slave.

Related Links:

One
Two

Why MBAs do finance – a studs and fighters perspective

I don’t have sources here but enough people have cribbed that nowadays too many MBAs are going into finance, and banking, and not too many of them get into “real management” jobs, which is what the country/the world desires them to get into. I clearly remmeber a Mint column on this topic by Govind Sankaranarayanan. And that is surely not the exception. And I remember reading this article very recently (don’t know where) which says that the reason MBAs were taken into banking was to provide a business perspective to banking, and not to be hardcore finance people themselves.

Management roles can be broadly classified into two – functional management and coordination management (the latter is also known as “general” management). Functional management is more like “captaincy” – you essentially do similar work to what your team does, and you guide and direct them, and help them, and boss over them, and get paid a lot more for it. The best part of functional management is that you can outsource all the chutiya kaam to some underling. And there is enough “functional” interaction for you with your team in order to keep your mind fresh.

Coordination management, on the other hand is mostly about getting things done. You don’t necessarily need to have experrtise in what your team does, though some degree of comfort does help. Most of your work is in coordinating various things, talking to people, both inside the team and outside, both inside the company and outside, and making sure that things are done. No special studness is generally required for it – all it requires is to be able to follow standard operating procedures, and also to be able to get work done out of people.

Historically, functional managers have been “grown” from within the team. it is typically someone who was doing similar work at a lower level who gets promoted and hence takes on a leadership role. So in an engineering job, the functional manager is also an engineer. The sales manager is also typically a salesman. And so on.

Historically, MBAs have been generally staffed in “coordination management” roles. Typically these are multifunctional multiskilled areas for which it is not easy to pick someone from one of the existing departments, and hence MBAs are recruited. Historically, when people have talked about “management”, they have referred to this kind of a role.

So through my description above, and through your own observations in several places, you would have figured out that coordination management/general management is typically a fairly fighter process. It is about getting things done, about following processes, about delivering, etc.

This applies only to India – but there is a reasonably high “stud cutoff” that is required in order to get into the better B-schools in the country. This is because the dominant MBA entrance exam – CAT – is an uberstud exam (I would argue that it is even more stud than the JEE – which requires some preparation at least, and hence puts a reasonable fighter cutoff). So you have all these studs getting into IIMs, and then discovering that the typical general management job is too fighter and too less stud for them, and then looking for an escape route.

Finance provides that escape route. Finance provides that escape valve to all those MBAs who figure out that they may not do well in case they get into general management. Finance as it was in the last 5-10 years was reasonably stud. And thus attracted MBAs in reasonably large numbers.

The simple fact is that a large number of people who get into MBA won’t be able to fit into a general management kind of job. Hence there is no use of commentators cribbing about this fact.

If the IIMs decide that they would rather produce general managers rather than functional managers, they would do well to change admission requirements. To make admission less stud and more fighter. ISB, in that sense, seems to be doing a decent job – by having significantly lower stud cutoffs and putting more emphasis on work experience and other fighterly aspects. Hence, you are more likely to find an ISB alum going into general managementt as opposed to IIM alum.

Don’t use stud processes for fighter jobs and fighter processes for stud jobs

When people crib to other people that their job is not too exciting and that it’s too process-oriented and that there’s not muc scope for independend thinking, the usual response is that no job is inherently process-oriented or thinking-oriented, and that what matters is the way in which one perceives his job. People usually say that it doesn’t matter if a job is stud or fighter, and you can choose to do it the way you want to. This is wrong.

So there are two kinds of jobs – stud (i.e. insight-oriented) and fighter (i.e. process oriented). And you can do the job in either a stud manner (trying to “solve a problem” and looking for insights) or in a fighter manner (logically breaking down the problem, structuring it according to known formula and then applying known processes to each sub-problem). So this gives scope for a 2 by 2. I don’t want this to look like a BCG paper so I’m not actually drawing a 2 by 2.

Two of the four quadrants are “normal” and productive – doing stud jobs in a stud manner, and fighter jobs in a fighter manner. There is usually an expectancy match here in terms of the person doing the job and the “client” (client is defined loosely here as the person for whom this job is being done. in most cases it’s the boss). Both parties have a good idea about the time it will tak e  for the job to be done, the quality of the solution, and so on. If you are in either of these two quadrants you are good.

You can’t do a stud job (something that inherently requires insight) using a fighter process. A fighter process, by definition, looks out for known kind of solutions. When the nature of the solution is completely unknown, or if the problem is completely unstructured, the fighter behaves like a headless chicken. It is only in very rare and lucky conditions that the fighter will be able to do the stud job. As for “fighterization”, about which I’ve been talking so much on this blog, the problem definition is usually tweaked slightly in order to convert the stud problem to a fighter problem. So in effect, you should not try to solve a “stud problem” using a fighter process. Also, as an employer, it is unfair to expect a mostly fighter employee to come up with a good solution for a stud problem.

The fourth quadrant is what I started off this blog post with – studs doing fighter jobs. The point here is that there is no real harm in doing a fighter job in a stud manner, and the stud should be able to come up wiht a pretty good solution. The problem is wiht expectations, and with efficiency. Doing a fighter job in a stud manner creates inefficiency, since a large part of the “solution” involves reinventing the wheel. Yes, the stud might be able to come up with enhanced solutions – maybe solve the problem for a general case, or make the solution more scalable or sustainable, but unless the “client” understands that the problem was a stud problem, he is unlikely to care for these enhancements (unless he asked for them of course), and is likely to get pained because of lack of efficiency.

Before doing something it is important to figure out if the client expects a stud solution or a fighter solution. And tailor your working style according to that. Else there could be serious expectation mismatch which can lead to some level of dissatisfaction.

And when you are distributing work to subordinates, it might also help to classify them using stud nad fighter scales and give them jobs that take advantage of their stronger suits. I know you can’t do this completely – since transaction costs of having more than one person working on a small piece of work can be high – but if you do this to the extent possible it is likely that you will get superior results out of everyone.

Fighterization of food

One of the topics that I’d introduced on my blog not so long ago was “fighterization“. The funda was basically about how professions that are inherently stud are “fighterzied” so that a larger number of people can participate in it, and a larger number of people can be served. In the original post, I had written about how strategy consulting has completely changed based on fighterization.

After that, I pointed out about how processes are set – my hypothesis being that the “process” is something that some stud would have followed, and which some people liked because of which it became a process. And more recently, I wrote about the fighterization of Carnatic music, which is an exception to the general rule. Classical music has not been fighterized so as to enable more people to participate, or to serve a larger market. It has naturally evolved this way.

And even more recently, I had talked about how “stud instructions” (which are looser, and more ‘principles based’) are inherently different from “fighter instructions” (which are basically a set of rules). Ravi, in a comment on Mohit‘s google reader shared items, said it’s like rule-based versus principles-based regulation.

Today I was reading this Vir Sanghvi piece on Lucknowi cuisine, which among other things talks about the fact that it is pulao that is made in Lucknow, and now biryani; and about the general declining standards at the Taj Lucknow. However, the part that caught my eye, which has resulted in this post with an ultra-long introduction was this statement:

The secret of good Lucknowi cooking, he said, is not the recipe. It is the hand. A chef has to know when to add what and depending on the water, the quality of the meat etc, it’s never exactly the same process. A great chef will have the confidence to improvise and to extract the maximum flavour from the ingredients.

This basically states that high-end cooking is basically a stud process. That the top chefs are studs, and can adapt their cooking and methods and styles to the ingredients and the atmosphere in order to churn out the best possible product.You might notice that most good cooks are this way. There is some bit of randomness or flexibility in the process that allows them to give out a superior product. And a possible reason why they may not be willing to give out their recipes even if they are not worried about their copyright is that the process of cooking is a stud process, and is hence not easily explained.

Publishing recipes is the attempt at fighterization of cooking. Each step is laid down in stone. Each ingredient needs to be exactly measured (apart from salt which is usually “to taste”). Each part of the process needs to be followed properly in the correct order. And if you do everything perfectly,  you will get the perfect standardized product.

Confession time. I’ve been in Gurgaon for 8 months and have yet to go to Old Delhi to eat (maybe I should make amends this saturday. if you want to join me, or in fact lead me, leave a comment). The only choley-bhature that I’ve had has been at Haldiram’s. And however well they attempt to make it, all they can churn out is the standardized “perfect” product. The “magic” that is supposed to be there in the food of Old Delhi is nowhere to be seen.

Taking an example close to home, my mother’s cooking can be broadly classified into two. One is the stuff that she has learnt from watching her mother and sisters cook. And she is great at making all of these – Bisibelebhath and masala dosa being her trademark dishes (most guests usually ask her to make one of these whenever we invite them home for a meal). She has learnt to make these things by watching. By trying and erring. And putting her personal touch to it. And she makes them really well.

On the other hand, there are these things that she makes by looking at recipes published in Women’s Era. Usually she messes them up. When she doesn’t, it’s standardized fare. She has learnt to cook them by a fighter process. Though I must mention that the closer the “special dish” is to traditional Kannadiga cooking (which she specializes in), the better it turns out.

Another example close to home. My own cooking. Certain things I’ve learnt to make by watching my mother cook. Certain other things I’ve learnt from this cookbook that my parents wrote for me before I went to England four years ago. And the quality of the stuff that I make, the taste in either case, etc. is markedly different.

So much about food. Coming to work, my day job involves fighterization too. Stock trading is supposed to be a stud process. And by trying to implement algorithmic trading, my company is trying to fighterize it. The company is not willing to take any half-measures in fighterization, so it is recruiting the ultimate fighter of ’em all – the computer – and teaching it to trade.

Preliminary reading on studs and fighters theory:

Studs and Fighters

Extending the studs and fighters theory

It’s about getting the Cos Theta right

Earlier today I was talking to Baada and to Aadisht (independently) about jobs, and fit, and utilization of various skills and option value of skills not utilized etc. So it is like this – you possess a variety of skills, and the job that you are going to do will not involve a large number of these. For the skills that you have that match the job’s requirements, you get paid in full. For the rest of the skills you possess, you only get paid the “option value” – i.e. your employer has the option to utilize these skills of yours and need not actually utilize them.

Hence in order to maximize your productivity and your pay, you need to maximize the cos theta.

Assume your skill set to be a vector in a N-dimensioanl hyperspace where N is the universe of orthogonal skills that people might possess. Now there are jobs which require a certain combination of skill sets, and can thus be seen as a vector. So it’s about maximizing the cos theta between your vector and your job’s vector.

So it’s something like this – you take your skills vector and project it on to the job requirement vector – your total skills will get multiplied now by the value of cos theta, where theta is the angle in the hyperspace between your skills vector and the job vector. For the projection of your skills on the requirement, you get paid in full. For the skills that you have that are orthogonal to the requirement, you get paid only in option value.

One option is to of course build skill set, and keep learning new tricks, and maybe even invent new skills. However, that is not a short-term plan. In the short to medium term, however, you need to maximize the cos theta in order to maximize the returns that your job provides. But as Baada put it, “But there is slisha too much information asymmetry to ensure that cos theta is maximised.”

There are two difficult steps, actually. First, you need to know your vector properly – most people don’t. Even if you assume that you can do a lot of “Ramnath” stuff and get to know yourself, there still lies the challenge of knowing the job’s vector. And the job’s requirement vector is typically more fluid than your skills vector. Hence you actually need to estimate the expected value of the job’s requirement vector before you take up the job.

The same applies when you are hiring. It is actually easier here since the variation in the hiree’s vector will not be as high as the variation in the job profile requirement vector, and you have a pretty good idea of the latter so it is easy to estimate the “projection”.

This perhaps explains why specialists have it easy. Typically, they have a major component of their skills vector along the axis of a fairly well-defined job profile (which is their specialization). And thus, since theta tends to 0, cos theta tends to 1, and they pretty much get full value for their skills.

At the other extreme, polymaths will find it tough to maximize their returns to skills out of a single job, since it is unlikely that there is any job that comes close to their skills vector. So whichever job they do, the small value of the resulting cos theta will cancel out the large magnitude of the skills vector. So for a polymath to maximize his/her skills, it is necessary to do more than one “job”. Unless he/she can define a job for himsel/herself which lies reasonably close to his/her skills vector.

(there is a small inaccuracy in this post. i’ve talked about the angle between two vectors, and taking the cosine of that. however, i’m not sure how it plays out in hyperspaces with a large number of dimensions. let us assume that it’s vaguely similar. people with more math fundaes on this please to be cantributing)