What was my motivation to quit my software developer job and become a trader? Must be the insane good salary I had as software developer
But they can form one, or sort of. At least fighting this messed up system as individual won't work. I read 60% of all h1b visa applications and granted visa originate from 2 single Indian job distribution centers. I don't want to know how much cash and non cash favors are exchanged between those shops, their lobbyists and vested interests in DC.
90k is a lot no matter how you slice or dice it. A family can make it on such salary, even in The Bay area, however compromises have to be made if there is only one bread winner, multiple kids. To be very honest, I think the average fair valued salary of a new grad lies somewhere in between 90k and, let's say, 40k. 60 to 65k being probably close to fair value. A single can definitely survive on such salary even in SF. The biggest issue is that people think they deserve a God status life style the year they leave campus.truth be told, most newgrads know shit, they are a huge cost burden to each company. A new grad should be content to live in a sardin can, no vacation during the first year, and basic food besides work work work until they have proven themselves. In summary, I don't think emerging market salaries converge to US levels but that the fair price convergence level lies in between, meaning salaries in the US must go down at some point. Nobody likes to hear that I am afraid that is where the sweet spot is gonna be
Something else to consider is the nature of the work. There are tons of software jobs in the DC area (where I live/work) all in support of government/defense programs. Those jobs can't be filled with foreigners (US citizen requirement) and command among the highest salaries in the US. Software professionals in the DC area are routinely making $100K+. With the right specialty $150K is pretty common and even $200K isn't out of the question.
An anecdote about why software engineers do well in the West. I'm on a project right now for a multi billion dollar medical devices company. They are releasing a new version of their flagship product and I'm an external consultant. I've seen the following happen with onshore USian employees: - Insist on commenting code for trivial things that are part of the language spec. - unable to merge between various branches of development. I'm serious. Using git. - spaghetti code. Code that only certain people can even work on in some modules. No valid reason for this to be the case. - repeatedly going off scope without help from the business. Point is that people are generally clueless even after years of experience. There are no Junior engineers on the team that I'm aware of. Now I come in, I work maybe 10 hours a week and I get done in that time what would take 3 of them a full week with a historical bug rate of less than 1 per feature. Anything complex lands in my inbox as a result. Of course I bill like a mother trucker. Off shoring will work if and only if you are doing something standard. Anything complex requires significant hand holding and people who don't need hand holding but can complete a project with a known and expected level of quality are worth quite a bit in the market because it's a rare skill that cannot be taught. Assume engineers have average intelligence, training, and you'll understand why the cream of the crop are worth quite a bit. The difficulty, and why I'm not making 3-5x what I could be, is that marketing is a tough nut to crack.
I'm a developer myself (degree in comp eng, minor in math, taught myself software while in high school, did my share of reverse engineering, buffer overflow exploits, and related, so I know software and hardware at a deep level). I've worked with a number of developers over the years (all remote). I'd say about 25% were in the US, the other 75% outside the US. The ones outside the US demanded similar (and sometimes higher) fees as their US counter-parts, so I don't think I have an adverse selection due to looking for cheaper foreign labor. I'd also say that it's very difficult to find good developers -- hell I'd settle for mediocre. For my last search, I had a short quiz (shouldn't have taken a mid level developer more than 10 minutes) and I only had 1 out of about 20 developers pass my quiz. Bear in mind, this quiz was only intended to test what I considered absolute basics -- if someone couldn't pass this, they shouldn't be writing code. I was told by the COO my quiz was too difficult and to use a 3rd party testing service. I went on the 3rd party testing service he had recommended (no idea how he found it) and they had questions marked as "easy" or "hard". I picked all easy ones and looked at what it came up with. I considered those questions substantially more difficult than the ones I had on my test. Anyway the point is, hiring developers is difficult. Their location or education does not seem to matter. In fact, one of the best developers I know didn't even finish high school, got a job at GetCo, and was able to retire after less than 10 years of working there. I think the issue is that it's just so difficult to find the needle in the haystack that it comes down to this: Small teams can't afford to have one of their developers spending much time on the hiring process and finding a good developer is very time consuming. You can outsource some of the filtering to non-tech people, but this has other down sides. Big teams think they can "grow" a developer, have them learn from their coworkers and such. I think this isn't as likely as one might believe, but they have the money and the human resources that if they have people slacking, with a big enough pool, it will be offset by the stars. Unfortunately compensation will be incredibly unlikely to compensate the stars at a proper multiplier compared to the slackers based on their contributions to the team. It's been my experience that you either "get" writing code or you don't. It's like algebra. People either can wrap their head around it or they spend their life in awe of it/scared of it.
Why don't you hire developers as part of your own team and try to convince a larger company (with the benefit of them seeing your quality work) to retain your "consulting" services on an almost full-time basis.
Making money isn't the primary driver. That would have me just want to kill myself after the 8th time one of my team did something stupid. Making money easily... That's my driver ;-)
one thing I noticed with indian devs is that they yearn for recognition, cannot learn on their own, don't understand fundamentals only specific framework/language syntax.
Yes, pretty much. You did hit on part of it, a big chunk of the software jobs are in the places where startups are, which is predominantly the Bay Area, NYC, Boston, and Austin, so location alone is a big driver. Keep in mind a decent nanny in the Bay Area makes $75K. Regardless of anecdotal anti H-1b stories, there's undoubtedly a shortage of actual software engineers (as opposed to "IT professionals") who can write good code and the growth rate of industries requiring them exceeds the rate of people going into the field. And as one poster I think correctly stated, your brain has to be wired a certain way to be a good developer so it's not like we can just increase the size of the CS class at Cal by 10X and 4 years later, problem solved. So given that a big chunk of jobs are in expensive areas and there is a supply and demand imbalance with a very inelastic curve and few good replacement options, econ 101 gives you a high marginal price which every employer pays regardless of where they are in the U.S. To your later admittedly joking point that you studied the wrong degree, if you have any engineering or hard science degree your brain is probably wired to allow you to pick up coding pretty quickly. Not suggesting a career change, but I can tell you as an electrical engineer I was able to learn enough to safely work on my own company's code base without danger of blowing anything up, and some of my "real" developers don't have CS degrees either. So nothing says you can't at least start programming algos on Quantopian or something similar for fun and end up pretty good at it in a few months.