Ask Slashdot: Jobs For Geeks In the Business/Financial World?
First time accepted submitter menphix writes "Hi there! I'm a software engineer in the bay area. I will be moving to Hong Kong where my wife works shortly. I understand that there will be a lot less opportunities to work for software companies there than in the bay area, but they do have a lot of business/financial companies in HK: investment banking, private equity, hedge funds, you name it! So I'm thinking maybe it'll be easier if I transition to work for those companies. Since I got my B.S. and M.S. both in computer science, I have no idea what those 'Wall Street jobs' are like, so I'm just wondering what you guys know about jobs in the business/financial world for geeks? Has anybody made the jump before?"
Hi
I have made the jump to the financial world. The short of it, there are plenty of people of IT people in the business so it is hard to get in now. But if you have talent and have something you can probably make it. Though if you have zero business knowledge of the financial world that is not good. You do need business knowledge. Ask me anything in specific if you wish...
"You can't make a race horse of a pig"
"No," said Samuel, "but you can make very fast pig"
Many banks work through recruiting companies to hire IT folks out here.
I have personally worked with Robert Walters to find IT work in a bank before and highly recommend them.
You can apply directly, but in many cases positions aren't even advertised openly, only through recruiters...
You could just stay at home, fake an illness and collect welfare.
In that way you'd still be a dishonest leech but at least you'd only be taking a small amount from those who are either productive or in need.
Since I got my B.S. and M.S. both in computer science, I have no idea what those 'Wall Street jobs' are like,
And you never will. What makes you think you can get hired in the financial industry with zero knowledge or experience? Just the desire to get rich isn't good enough .
Also, in Hong Kong, foreigners don't get a work visa without the employer making a case you have unique skills that a local doesn't. You seem to have none. Your wife can sponsor you for residency, not employment.
Since you're coming to Hong Kong, hang around in the bars in Lan Kwai Fong and try to ingratiate yourself with some suits, maybe you'll get lucky and get someone to give you a junior position. Or you could just deal drugs to them.
and read "Jobs For Greeks In the Business/Financial World?"
I live in HK, and unfortunately the bottom line is that you're going to find this difficult. Finance companies/banks are your best bet for a job by far, especially if you don't speak Chinese, but they are firing at the moment (much of it under the radar) not hiring. A few friends here want to make a similar transition and have not so far achieved success. This is even for techie areas like high frequency trading.
If you have time on your hands while you're here, consider taking a finance course and do check out our HK hackerspace, Dim Sum Labs (www.dimsumlabs.com). You will meet people in the same situation.
Best of luck.
get a job with more dignity and less shame, rent-boy for example.
You should be looking at a job in the PR industry, seeing you have the knack for it. Getting your job seeking ad published on slashdot is not bad.
Well Played, Sir.
That's what the business/financial folks read. It will give you a feel for the terrain that you will be trekking through. It's good to be able to converse in the language of the natives. Just like IT has its specific issue areas, business/financial has them as well.
And it's fun to read and informative, as well.
Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
That said, how is your knowledge of statistics, probability theory, game theory and/or real time computing? Finance is basically applied maths with a good dollop of psychology and an understanding of self-promotion. This is as true now as it was in the 14th century. If you want to succeed as a designer of upmarket sports cars, expertise in the design of sparking plugs is possibly not the best starting point.
From scarped cliff or quarried stone she cries "A thousand types are gone, I care for nothing, no not one."
Different firms, different departments, can have wildly different needs. Some areas may need hot coding skills, low latency, high performance, networked and quick turnaround on changes. Some may need database work, configuration of 3rd party packages, integration with those packages and these might be turned around more slowly under strict change conditions. Some roles may be reporting based and hence have deadlines that simply cannot be broken because figures need to go to regulators or central banks. Most areas are steeped in red-tape, bureacracy and don't move as fast as they would like to. There's usually a lot of politics between departments and between teams - both internal and external as you'll be dealing with a whole stack of vendors most of the time. You'll be competing with some of the best coders and/or system admins and DBAs that money can buy and you'll need to keep an eye on what your customer wants whilst also making sure you're getting what you want - mainly that means managing your own career as everyone else is busy managing theirs..
It can be a challenge, it can be devisive, it can be difficult, it can be fun. Depends what kind of a person you are and if you are able to thrive there. I have many friends who simply don't like it, have tried it and have walked away. I've been lucky enough to have worked in this world for a while and enjoy it thoroughly as you get to work with some bright people and can make it pretty much what you want if you're good. But yes, it's not for everyone.
Create a problem and offer the solution. Depending on your skills ... Would you be able to cause a stock market crash?... Profit....
In the movie Margin Call, based loosely on the 2007-2008 financial crisis, the character Peter Sullivan, played by Zachary Quinto, was a math guy (like all true computer scientists) that successfully crossed over to the finance world. Unfortunately, he was also the character that figured out what the man he replaced had figured out, which is that the global economy was going to collapse the following day. Are you sure you're up for that kind of thing?
The Admin and the Engineer
China is dynamic and hungry for all kinds of talent. Keep your eyes and your mind open. Take a job and see where it leads. Education for example is a good intro. You have the qualifications to teach at University. You will meet people. Stuff will happen. I went to China to teach English. Within 2 months I was teaching gnu/linux/open source stuff. I'm sure more would have happened if they hadn't refused me a visa. Have fun. Watch out for the government thugs. Don't trust anyone. Yikes.
From an IT-persons....
Why is it that IT specialists think that they are computer scientists?
These are entirely different disciplines.
The Admin and the Engineer
From a typical slashdot poster's view the business world is immoral and bad behavior paired with incompetence and arrogance. No, that's not our world.
I think you'll find he meant this.
Why is it that IT specialists think that they are computer scientists?
Why is it that so many people who have studied computer science think they're computer scientists even though they've ended up just being regular IT people like most people do who study computer science, but they don't like to be called that because they chose a marginally more complicated field of study so they get upset when people see the distinction as blurred?
China is dynamic and hungry for all kinds of talent.
True, but unfortunately, the author is not the kind China is looking for
China looks for talents who are pro-active, who do not wait for others to hire him
The talents China really wants are those who can add to what China offers, not those who rely on whatever China has
I know what I am talking about - I have businesses in China
Muchas Gracias, Señor Edward Snowden !
Learn to drink. Don't turn down a drink. Take people you want to deal with out to drink. Read the air, act appropriately.
Other than that I don't think you need any particular business knowledge. From what I've gathered is that CN/HK/TW business revolves completely about being an awesome drunk.
You clearly have no idea what you're talking about. As someone who is in this field, I "look for" and "find" jobs all the time. Our bank has plenty of staff working in Hong Kong. Depending on the OP's skill set, it could be easy or difficult to find work, but it is nowhere near impossible.
If you want to pontificate on the obsolescence of those who "look for" jobs instead of "inventing" them, perhaps you should write a self-help book. Not many of those around.
For those of us who prefer "doing" instead of listening to idiots who pretend to know how to do things better, there is nothing wrong with the old-fashioned way: freshening a CV to emphasize the skills one has, and beating the street. Use agents to get that job. You'll do fine.
I made the jump and it was pretty painless. Read "Options, Futures, and Other Derivatives" by John C Hull to get an idea for the maths required. It's the best book for maths oriented comp-scis to read.
The only problem I've found is this: if you're a software guy at a software company you're doing the "core business", but being a software guy at a finance company you're not. It means that good software is not always the priority.
Also, if you work for a large bank, the failure rate of software projects can be pretty high, and the bureaucracy involved in getting stuff done can be pretty hard sometimes. Pay's good though.
Maybe it's irony, but moderating +5 Informative something like "reading The Economist" is showing something about the current Slashdot, why not the Wall Street Journal right? There is "Wall Street" in the name it must be good to get a finance job!! Yes it's the usual rant.
Anyway, I've been in IT finance for the past 7 years, one of the main european financial institution.
I can code but I'm no math head and have no special social skills (appart from applying good advices you can find from trustful resources that you should already know). I've been expat in 3 different countries and I'm now in Singapore, moved to project manager 4 years ago and soon getting a nice promotion to switch to accounting control. I bet you don't understand how that can be a promotion, I wouldn't have either 7 years ago.
But outside this, if you can code, you know how the various business of retail or investment bank are working and you did bet on the right technology you'll find a job easily. Here it's all Java if you want to have a nice job. Short term, low budget crap is using PHP/Whatever tech being evaluated at the moment.
One warning though, this investment bank is very conservative, that is I'm typing this on a WinXP cousin made for the bank and have no idea if or when we'll switch to something more actual. New technology get about 3 or 4 years approval time, so you either stick with standards (IBM, Oracle) or you can forget about the latest fun technology for your time spent in the office.
Outside this small detail, I obviously love this job and the people here and all over the countries I've been sent to.
And please, prepare properly for interviewing and do you research before contacting me, if you are interested.
... I agree
The Chinese can't really handle much alcohol but still they drink as if there's no tomorrow
You just can't tell the Chinese host that you do not drink - it's outright impolite to do so
Muchas Gracias, Señor Edward Snowden !
Not -1 too political. -1 stereotypical over generalization due to public opinion.
In every sector you have the good guys, a slew of neural folks, and the bad guys.
In terms of media coverage, the good guys may make a 10 minute clip on the news once. The neutral people never really make the news, and the bad guys get a lot of coverage that makes them infamous.
We don't hear about the finance people who help find small businesses and give them capital to grow. We hear about the bad guys who trick people in bad investments because the can get away with it.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
I did the same thing around five years ago. Am still in Hong Kong and still employed (for now), but we've been shedding staff for years and like most financial services companies are probably not going on a hiring spree any time soon. Having said that, I still see jobs posted occasionally.
Track down the recruiters here - they shouldn't be too hard to find. Somebody mentioned Robert Walters which is a good start, maybe also Aston Carter and Chandler Macleod. Recruiters seem to find me on LinkedIn pretty regularly but that's probably because I've built up a network of other people in the industry.
Might be tough also as they generally prefer people with industry experience, and there are plenty of them on the market given recent layoffs, so competition will be fierce. Might be better outside of financial services but I kind of doubt it.
For me - I got a job with a consulting company whose client was an investment bank, so got my foot in the door for a job I probably wouldn't normally have been considered for. Once I had the experience (there's a lot to get used to) I switched to working for the client. Probably difficult to emulate but you never know. I initially got offered a job at a blue chip consulting company at a terrible rate, but ended up at an obscure one at a merely not-so-great rate. It eventually improved but you might want to lower your expectations in advance. At least the tax is low (although if you're American I guess you get screwed on paying US tax anyway) although housing is nuts.
Oh, and Hong Kong and mainland China are like two different countries. You can pretty much ignore any advice which relates to the latter. Hong Kong is a very easy place to live in - I love it. People generally struggle more in the mainland. However, if your wife is in Hong Kong you could consider working in Shenzen, over the border, although might be tough to pull off (and the commute to see eachother would be unpleasant).
Don't get too hung up on the whole 'financial' stuff. Just like in any industry today, the IT jobs in Financial industry are really diverse - GUI expert, Customer Web Portal developer, data mining, real-time statistical analysis, system administration, IT security expertise, even low level parallel programming (to squeeze every drop of processor juice out of those High Frequency Trading machines).
So just concentrate on your strengths and look for the kind of job that best fits your experience. Knowing something about the financial world is good, but being new to it is not a showstopper - the Financial sector still needs more IT guys and they have to come from somewhere.
You probably should know enough to understand what the company you are applying to is doing (e.g. knowing what a hedge fund is) in general and you should be prepared to answer questions like 'How do you handle your finances?' in a respectable manner.
If that's the case, than GGP probably won't find any job at a finance institute.
They usually just buy their computer hardware from IBM or HP and they don't design their own CPU's.
Most use economists (and some quants use mathematicians) to design their algorithms.
That leaves little room for somebody mathching the description you gave.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
My wife has worked in the world of banking for 20+ years. All bankers are pretty darn evil. bigger the bank, the bigger the evil. She swore that they had satanic pentagrams on the floors of the executive floor, and wore only red robes up there at the 5/3 bank headquarters.
Do not look at laser with remaining good eye.
Since I got my B.S. and M.S. both in computer science, I have no idea what those 'Wall Street jobs' are like, so I'm just wondering what you guys know about jobs in the business/financial world for geeks? Has anybody made the jump before?"
FWIW, my first job was at a financial/insurance institution, very business-like. Surprisingly, they gave me a chance to work as a systems analysts and programmer with only a AA degree. The institution didn't give college reimbursement except for business majors, but OTH, they were quite flexible with work schedules, and they threw several thousands of dollars on me in training. Other than my current employer, that financial/insurance company was the only one that ever pay for my training (and its employee's training) from its coffers.
YMMV, but working with a financial institution can be very rewarding... or not. Same with engineering firms. Some are great, and some are filled with "lifers" who should never be allowed near a computer.
Go with your eyes open to see the good and bad, and try to make the best of it. You truly know if an employer is good only when you are on top of the saddle.
Ok, before I set off on a rant, I'd like to point out that, unlike most of the posters here, I actually work in the industry you are trying to break into. I have been a software engineer (contract) in the finance industry for about six years now, most of that in London, where I live now. I can tell you it is not a piece of cake to break into the industry, but it is possible, and well worth it to do so. It's difficult to get in for the following reasons:
1) They often "require" business experience. In theory, this means that the will want to see evidence that you've worked in finance before, vis-a-vis a job on your CV for some sort of bank or related institution. Depending on the specific job, they may ask you questions in the techical interview to ascertain your level of experience, knowledge of algorithms and financial math, etc.
2) There have been a number of layoffs in the sector recently, which means there is a bit of a glut in IT staff right now, all of whom have more experience than you.
HOWEVER, you must read this with a grain of salt. As with any endeavor, things are often more subtle in practice. Bear these facts in mind:
1) Many of the people on the bench right now, a.k.a. your competition, were let go for a reason. The financial sector attracts many for the very lucrative salaries, but not all of these people are really that good. Every so often, the banks go through a house-cleaning phase to get rid of the dead wood. Many of these people don't interview well, and are not able to perform well on technical tests. As someone who interviews and hires many developers for our team, I can attest that there are some very poor candidates out there. Many of them got in during the earlier boom, when banks hired anyone and everyone. Some people just weren't cut out for the job, though. I'm constantly being told by recruiters, "There are plenty of candidates, but it's hard to find GOOD ones."
2) Many people are leaving the industry. Frustrated by the recent downturn, byzantine immigration policies, rethinking their life goals, or whatever, thousands of people are turning their back on the finance industry, or even IT in general. Those who stick it out are rewarded.
3) It wouldn't be any easier to transition into another industry, either. It's always difficult jumping onto another ship. The trick is getting that first job. Once you learn the lingo, a bit of the business, and make contacts, it gets much easier.
4) Not all banks require experience. Bearing point 1, above, in mind, I personally know a lot of managers who don't care a bit whether someone has experience in banking or finance. They want good developers first and foremost, and view any business experience as a bonus. Most of my job is just good software development practice, coupled with algorithms and data structures. I rarely need to know anything about how the business works, or I'm capable of learning it in a short time. Most good managers want people who can learn, not those who know it all already. Also bear in mind that finance is not as hard as most people like to make out. ;-)
5) Many banks over-cleaned, and now need to hire people back. Since a lot of folk have left the industry, that can be harder than it seems. Again, despite the glut of developers, there is a dearth of good talent.
6) Permanent jobs are better for first-timers. Many will try to step into the contract world immediately. The reason for this is the contractors running a limited company make far more than our permanent counterparts - as much as 40-50% more when tax savings are factored in. This used to be easy to do from the get-go, and I admit to being one of these folk. However, if you've never worked contract, never been in the finance industry, and/or have less than 10 years' overall experience in I.T., my advice is to start off permanent. Get some good experience, as little as 2-3 years, and then decide if contract is right for you. (Then you can make the big bucks.
You should tell that to the 40 expat who have been sent back home so far this year, they were considered "too expensive"
But it's true I'm white.
But my boss is not white.
On a more general note, I think expat are mostly respectful foreigners.
We are not here for long usually and we didn't choose the destination.
We just want to fit in and know very well we are spoiled compare to locals.
I was in Japan during the earthquake and was outraged at the way we were treated compare to locals.
Get yourself involved in some Corporate Performance Management stuff (specifically OLAP). This is the perfect intersection of IT and Business/Finance. Think Oracle Hyperion, IBM Cognos TM1, etc. Guys I work with (not me) are currently putting this stuff in at our clients - even the guys without the technical know-how (e.g. they still have finance/technical backgrounds but don't actually build it) have a role in navigating/deciphering and translating whatever bunch of Excel models and disparate systems into Functional Requirements, which get built into Multidimensional structures by the technical guys. I'd start by looking for companies that do this type of stuff - the role name could be anything from Solution Architect to Consultant. Good luck!
I work in the industry. Stock exchanges (and futures, options etc) and investors use a variety of protocols to distribute stock prices and accept orders and there is a huge variety of middleware and endware involved.
Learn about the FIX protocol, learn about the basics of multicast binary protocols, and learn a bit about how basic stock trading works (or indeed even just namedrop all those things during an interview) and all other things being equal you should be able to get a job working on or with such software.
Some links you might find useful:
http://fixprotocol.org/
http://fixprotocol.org/fast/
http://www.moneyweek.com/tutorials
If that's the case, than GGP probably won't find any job at a finance institute. They usually just buy their computer hardware from IBM or HP and they don't design their own CPU's.
Ok, a computing machine isn't necessarily a computer in the vernacular sense of what IBM or HP sells, and computer scientists don't design CPU's, per se; that would be computer engineers... different animal. A computing machine, as givin in the wiki definition, could be a complex modeling application.
Most use economists (and some quants use mathematicians) to design their algorithms. That leaves little room for somebody mathching the description you gave.
I apologize if I mislead you. To be more clear, a computer scientist is, simply put, a specialized mathematician, one who perhaps constructs algorithms to model complex systems, perhaps like those that might be useful in financial analysis or predictive finacial models, but who certainly has comprehensive knowledge of statistics and the discrete mathematics of permutations and combinations.
The Admin and the Engineer
If you're well and truly qualified, there are plenty of jobs in CS. Off the top of my head know that Jane Street (trading company) has an office in Hong Kong; it's a popular thing to do, because it lets these companies have somebody on-the-job 24 hours/day.
Because IT is the plumbing, Software Engineering is the design/implementation of software and CS is the academic equivalent.
I'm not 'an IT Person', I write software, and am a software engineer.
I have to agree with parent... software engineering sounds suspiciously like the product of marketing, as there is nothing material to the result or the work. It's just a more ominous sounding term than "programmer," but only serves to dilute the meaning of the word "engineer," the way "sales engineer," "desktop engineer," or "Slashdot comment engineer" does. Programmers rule, are generally very bright and everyone knows it, and I don't know from where the need for this additional magnificence comes.
The Admin and the Engineer
Are you switching because you want to, or solely because of the move?
Why not just keep your current job, but work remotely? Or, if your current employer is not smart enough to allow that, find a job with an international company that cares more about what you do than where you happen to live.
Go to http://jobs.efinancialcareers.hk/Information_Technology.htm and start calling head-hunters. I can give you some recommendations.
We don't hear about the finance people who help find small businesses and give them capital to grow.
You have a strange definition of "give".
Venture capital funders are the corporate version of moneylenders and loan sharks, and just like the mafia guy they don't do this out of the kindness of their heart, but to wring a maximum amount of profit out of someone with nowhere else to go.
The small percentage of companies that succeed doesn't make up for the large percentage that fail because they eventually can't afford to pay the exorbitant returns.
I think you can draw a distinction between a programmer and a software engineer. A programmer is generally much more language-minded. Whereas as software engineer is much more solution-minded. Someone who can write anything in C is a programmer. Someone who knows why he should pick one language over the other (even though a solution can be written in both languages) is a software engineer. Engineering, in people's minds, is the work of building structures. When you build complicated constructs and an obvious repeatable reproducible way in software, your work simply feels more like engineering than like programming.
Any guest worker system is indistinguishable from indentured servitude.
Based on your submitted text, you might want to work on your English skills if you want to work in the business field. English is very common in HK (other languages are definitely an asset). Lack of language skills is generally ignored (and accepted) in IT, but you better be able to write properly in business.
I have to agree with parent... software engineering sounds suspiciously like the product of marketing, as there is nothing material to the result or the work. It's just a more ominous sounding term than "programmer," but only serves to dilute the meaning of the word "engineer," the way "sales engineer," "desktop engineer," or "Slashdot comment engineer" does. Programmers rule, are generally very bright and everyone knows it, and I don't know from where the need for this additional magnificence comes.
Why do you think adding the word "engineer" adds additional magnificence? Its origins lie in simply operating machines of war, so jobs such as locomotive engineer are much closer to the original meaning than mechanical engineering is.
But the more modern meaning can be broadly defined as someone who designs complex systems. I have no problem even with classifications such as custodial engineering, as long as you are doing innovative work towards the goal of improving the janitorial profession (and not just scrubbing toilets).
Arguing that most people who call themselves software engineers are actually programmers is a worthwhile discussion, but arguing that the field of software engineering does not exist is no different than saying computer scientists are no different than standard programmers.
-- All that is necessary for the triumph of evil is that good men do nothing. -- Edmund Burke
Hi, I made the jump a few years ago when working in Geneva. One thing that really helped me was my old 1st school year knowledge of Unix, C and basically anything 20+ years old. They have a lot of systems that rely on as400, Shell/AWK scripts and jobs, Cobol and all this stuff. They are so afraid to break it that they never change it. Also, be good about security. Know what SSL is, encryption, DMZ, anything related to data security, redundancy and hacking. Banks hate security breach and are very serious about it. Make sure you refresh your memory about these two points and it will help a lot. Good luck !
Posting anonymously for cause - I currently work in the financial services industry, and came here from a large storage appliance manufacturer. I have been working in financial services for about 10 years, but am now actually looking to make a move back to a technology company because I'm just tired of the financial world. Here's what I see as the major differences:
1) Financial companies seem much more cost-focused with respect to IT expenditures; If you want to spend money (on new equipment, new software, training, etc.) , be prepared to have to justify the cost extensively. The computers support the business in finance, they are not "the business" in and of themselves.
2) Financial companies seem to be much slower-moving than tech companies; Be prepared to deal with "conservative banker" mentalities from your business peers. "That java software has been running fine for 10 years now, why would we need to upgrade it to run on a new version of the JVM when it's not broken?" This has two upshots:
a) You'll see a lot of fragmentation - where multiple versions of a particular platform are all actively running in production, and don't get cycled out for a LONG time.
b) If you want to always work with "latest and greatest" of everything, you're in for a disappointment. This witch's brew of production versions will mean that you are often constrained to particular (older) versions of JDKs, server OS, etc. etc. etc.
3) Be prepared for more politics. Financial companies seem far more political than the tech companies I've worked at - don't always expect the "technically best, but politically tepid" solution to win. I had to work for 2 years with a project that was bound for failure, and I spent every chance I could talking to my boss and explaining why it was a bad solution, a bad product, and we needed to shift our strategy. Every time, he'd say, "Thanks for the information, but our hands are tied - Senior VP blahblah has decided that this is the product we're using (product, surprisingly, came from SVP blahblah's previous employer! Go figure!), and the decision is final." This was shocking to me, because I've never quite seen politics as a technological driver in quite so blatant a manner in the tech world.
4) Financial sector - and I suspect this is a symptom of "large companies in general" - is rife with bureaucrats and "not my problem" support personnel. People who will review your request, and simply close it with a comment of, "You filled this in wrong," are far more common in finance than they were in my experience in the tech world. I suspect this has to do with the motivations of the people there: large financial company, people tend to believe in working "8-5" type hours, whereas in some of the (smaller) tech companies, people work *because they fucking love their work,* and are often genuinely interested in helping someone else solve a problem. This becomes apparent in the attitudes: "Sorry we're not the team to help with that," is a common closure comment on requests. "Filled in wrong, please submit again," is another. If this is the type of thing you can't deal with with a little humor, then you probably will be extremely unhappy at a *large* financial company, at least.
5) Heavily siloed organizations, resulting in lots of paperwork - don't expect to be able to do everything you want to do on a system easily. I've been waiting 3 weeks for new servers (unused, they're still being built out) to simply have their names changed - an operation that would take me literally 20 minutes, but I'm not allowed to make the change myself, I have to wait for the asset team and the unix admin team and the provisioning team to all have the same 20 minute window to update their respective systems to reflect the name change... that sort of thing can be frustrating - I have 12 requests out just for that name change - one for each server, to each team that needs to make a change.
That said, the *challenges* of financial organizations are impressive, and can be q
Arguing that most people who call themselves software engineers are actually programmers is a worthwhile discussion, but arguing that the field of software engineering does not exist is no different than saying computer scientists are no different than standard programmers.
I'm not sure that's true, equating one argument to another. But I, personally, am unaware of the distinction between a programmer and a software engineer. If there is a difference, please say so. I first heard the term "software engineering" around 2001. The operating system UNIX was programmed by Dennis Ritchie, amoung others, in 1969. Was that really software engineering? or was it programming?
The Admin and the Engineer
I am also a software engineer who moved back to HK some years ago. For high paying development job unfortunately Finance is your best, and probably the only option.
While you are looking around for your next gig, why not network a bit with the local tech/startup community (www.startupshk.com, www.hkcommons.com) . It is not as big or as established as the Valley, but we do have a group of passionate people trying to develop our own tech community here.
Comment removed based on user account deletion
It depends on what you can do. I see a lot of postings from fin. firms looking for architects and Java devs to deploy and customize content management systems. There's always work in the "lights-on" realms, sys admin, trading systems support/maintenance, and of course DBAs. Also remember that telecommute is becoming an increasingly popular option re. corporate contract work for geeks; so make a telecommute search agent part of your dice profile.
Development is programmable; Discovery is not programmable. (Fuller)
1- Don't presume before hand that the job market for CS is bad there, it's entirely possible the job market of Finance might be even worse. Get some concrete data.
2-Do outsourced programming work. If slashdot is any guide, the biggest problem with outsourcing is quality assurance. Since you are already an American, with American degrees and American experience, your repute will be much higher. Make some contacts in your place, and ask them to email their projects to HK.
3- Go the middle route; mix CS with Finance. XBRL [1] is a finance related computing language that is quite in demand nowadays. IIRC, tax and government authorities often mandate that information be provided in XBRL, so even financial organisations need CS talent for that. If not, combine that with the point above and do outsourced XBRL work for US based clients.
4-If you insist on Finance, get a certification, CFA or CMA might be best for you (*relatively* easier entry requirements, plus not locality bound like CPA). IIRC, CFA has three papers, CMA has two, so you might look at those.
Just my 0.02 Bitcoins, please let me know if my info is wrong.
[1]: http://en.wikipedia.org/wiki/XBRL
I am an ACCA student. Got a query on Accountancy/Finance? Maybe I can help!
There are some combo CS+Fin certifications, Like CISA [1], look into those too.
[1]: http://en.wikipedia.org/wiki/Certified_Information_Systems_Auditor
I am an ACCA student. Got a query on Accountancy/Finance? Maybe I can help!
I think that terms like "sales engineer", "applications engineer", and "software engineer" are legitimate when the roles and responsibilities match with what other "engineers" such as civil, mechanical, electrical, etc actually do. I see no problem with someone who constantly develops mathematical models in MATLAB, participates or at least has access to/understands/and utilizes academic research, and then applies those models to real-time securities trading calling himself a "financial engineer".
I expect that a "software engineer" should understand not only the language he is coding in, basic common elements of mathematics and programming techniques, and the hardware that will run his programs, but he should also be very familiar with the application he is coding for. A programmer with a physics or mechanical engineering degree (or equivalent knowledge and/or experience) who writes software that can graphically display realistic 3D physics in a game or simulation would fit my definition of a "software engineer". A programmer that has to have a physicist explain what the software needs to do and needs a manager or architect to break down a flow chart for him is just a programmer (and there's nothing wrong with that). For this reason I tend to expect "software engineers" to be involved with embedded systems, industrial controls, or other real-world applications where knowledge beyond coding is required. Now when the application is specifically within the realm of computer science, such as appling general engineering techniques to the design, development, and maintenance of a database application, then who am I to say he's not an engineer. But at the some token, just because you can develop customized spreadsheets and use some VBA code in Excel, I don't think you qualify as "software engineer".
Some of the boundaries of engineering, even in the physical world, can be blurry. I've seen examples of two individuals, one is titled "electrical test technician" and the other "electrical test engineer", but other than the fact that one had an engineering degree, both of them were equally capable of developing and executing test procedures, designing and building test fixtures, and calibrating and using all sorts of test equipment. Both the technician and the engineer worked under the supervision of the same manager.
As for "sales engineer", this should be a person who, if they do not possess and engineering degree or PE license, should have at least worked for a considerable length of time developing, testing, and troubleshooting the type of product they end up selling. In many companies a sales manager or account executive with a business background might visit a customer with a sales engineer who can provide more detailed technical detail, answer questions, and provide technical support for a technical product. With highly technical products the customer often doesn't know what he really needs or how to use it once he gets it - ergo, the need for the sales engineer. Often times there is no additional need for the "business" orientated sales person and the sales engineer is the only sales person required to sell and support the product. Being able to identify problems in the field that need to be addressed by the engineers at the factory is very important, and having the technical background also means that they won't waste customer or factory time on a problem that can be fixed in the field. Many products have certain features that can or need to be "engineered" in the field specific to the customer's needs. The sales engineer in this case is both product sales person and implementation consultant. They tend to bypass business oriented purchasing managers and work and communicate directly with the senior engineering staff of their customers, and the sales engineers tend to build rapport with the customer's engineers in a way that many business-orientated sales people cannot. One of the paybacks to companies that have sales engineers is that they can often convince a customer's engineers to c
I had never made such a jump before ...
For quite some time there has been a serious push to use quantitative analysis to drive decisions. I know this is contrary to the 'Wall Street Gambler' picture that pops into people's heads so frequently, but it really is the truth. High frequency trading operations are a perfect (if not well loved) example.
I'm not in high frequency trading, but I do work for a large financial services company. We frequently look for people with very strong skills in data analysis and then have to help them develop their programming skills. This isn't usually that difficult as these skills seem to come naturally to these folk. I'll assume, with your background, that you are good at accessing and processing data. If you've got these skills I'd suggest you'd spend some time focusing on statistics and other quantitative analysis skills. With those skills (which are rare and in very high demand in financial services) and your M.S. in comp sci you will be highly marketable and should be able to command a very good salary.
If you want examples of some of the things people are looking for head over to Kaggle and look at some of their competitions. I'd also suggest that you enter a couple so you can start a portfolio of projects to bring to potential employers. BTW I am not associated with Kaggle I just think it's a cool idea.
"Wall St" is a tremendous beast, and fortunately for you, the biggest banks have larger "IT" departments than major software companies. I put IT in quotes, because in general, I think of IT as being the networking/desktop support guys, not developers, but on Wall St, developers are considered IT. Most jobs need no real financial experience, you are just building a web app or piece of infrastructure, and in the case of real IT jobs, you are just building infrastructure like any other- a network on a trading floor might have a bit more fail over and edge protection, but its still just a network. The highest paying "quant" and automated trading jobs do require financial knowledge, but there are many jobs that don't require that.
The more dangerous question is what is the culture like? The crisis has really hit the banks hard. I used to love my job and the industry, but its really changed from work 10 hours a day because you love it and want to get ahead, to work 11 hours a day or else you are at risk of being laid off- and that risk is very real. The banks nowadays seem to hiring and firing in waves, and just kind of seeing what sticks. Layoffs are a semi-annual occurrence. I have watched the culture from generally being team based and cooperative, to very competitive. People are overworked, and no longer willing to take time and risk their projects being late to explain how something works to someone new. So in general you have to work twice as hard reverse engineering stuff and looking at years old docs and source code to learn how things work. The guys that are thriving on my team are young, single, and generally don't have friends and families in the area. They don't mind working late nights and weekends as much, and don't seem all that concerned that they are heading into their late 20s alone. I sometimes wish I never got a dog, because while my wife can tolerate me working late to some extent (because she often does as well), I have real guilt when the clock hits 7:30 pm and I know my little furball is sitting in a crate anxiously awaiting for me to come home. I also miss my wife and dog as well- it was a lot easier to work past 8pm when I only had some transient roommates at home waiting for me.
Some things that make me happy: I work on real, important systems. These make real money for the firm, and my contributions have real bottom line impact on revenue. There are no "throwaway" projects, code that doesn't make it into production, etc that I hear about in a lot of places. The pay is generally good, but as I spoke before, the hours are murderous, and bonuses are way down. They are no longer something you look forward to all year round. The culture used to be exciting and dynamic, and I hope that the industry will get its groove back, but it seems to be permanently calcified- moving from IT to the business side or to a real quantitative role is nearly impossible once you are boxed in as an "IT" guy.
Things that make me unhappy: At larger firms, its really hard to innovate. At a smaller firm, I would read about a new boost release, see something I wanted to use in it, work a little late that night to upgrade the codebase to it, and be done with it. Heard about a new IDE or compiler? I would DL it and try it out. Same for new versions of software like Chrome, firefox, or whatever. Playing with new technology makes me happy. At larger banks, everything is locked down. To upgrade from boost 1.35 to something more recent, is going to require a business sponsor, or some proven improvement- which is really hard to do when you can't even DL the source code as just about all download sites are blocked! You will be using winxp, and the approved version of the software packages your company has blessed- which is always several years behind. I was quite excited when we moved from gcc3.4 to 4.1 last year. There are lots of meetings, a lot of time spent coordinating with other teams and regions. There is also a general trend for all new hiring to occur in cheap regions like budapest, eastern europe, and Indi
I read and enjoyed "My life as a quant" , by Emanuel Derman.
BTW, forgot to mention, there is a big difference between banks and trading firms. I'd suggest you focus on trading firms. Banks vary quite a bit and many of them are just IT shops that buy vendor products. Trading firms lean way forward and although there is a penchant for hiring people with financial sector experience that is a way distant second to hiring damn smart people. For my team, I'm actually looking for people explicitly NOT from the financial sector. We have a lot of ex-Google people, national lab HPC people, etc. I'm looking for people with experience in _large_ scale distributed computing (and by distributed I mean global and all the latency and flappiness that implies).
I work for a company that is in Finance/Banking in Hong Kong. Drop me an email and I'll try to help you out. spawn57-at-yahoo.com
I can see where you are coming from, and have great sympathy. It is the whole 'sanitation engineer' joke over again.
Around here we have 'technical specialists' 'senior technical specialists' 'analyst programmers' 'coders' 'business analysts' 'policy analysts'. You get the idea.
If your role is 'coder' then you take documented IT Requirements and turn them into code, unit test, code review, and hand it off to Functional Test. This role may need to write or update Technical Specifications based on the IT Requirements.
Here, if your role is 'analyst programmer' then you take Business Requirements, undertake analysis (of varying types and situations) of existing or new systems and produce IT Requirements and Technical Specifications. You are also expected to be able to be a coder as required and do systems support and other technical work; coding takes a lot of time but is only part of the whole. Some BA and PA skills are also useful, as is database design.
By your response, our 'analyst programmer' role is a 'software engineer'. No, it isn't working with physical objects but is is 'engineering'.
Notice that the wikipedia article references The Mythical Man-Month: Essays on Software Engineering, p119. This page - https://en.wikipedia.org/wiki/List_of_engineering_branches - lists https://en.wikipedia.org/wiki/Software_engineering as a major speciality of Computer engineering.
So far as I can see, most of the time when I see this type of argument it usually comes down to 'does everyone involved in this argument understand the difference between *analysis and design* and *coding* and 'is this a coder vs analyst role' argument.
I have had some serious problems with coders who don't understand the difference between their job to code and the job of analyst programmer (analysis and design and code). History repeats itself. My experience is that coders throw their code in, make quick and often rash judgements and decisions, don't take the time to understand the system or apply basic rules and just whack in whatever works, tend to get quite upset at the mere thought of a code review or formal testing and really really don't see the point of or want to have anything to do with business or technical specifications (generalising here from experience with quite a few coders as compared to working with quite a lot of analyst programmers).
Do you agree that there are at least two types of programmer. One which codes (no or minimal system analysis / design - build and test only) and one which engineers (analysis, design, build and test)?
You have a sick, twisted mind. Please subscribe me to your newsletter.
http://ask.slashdot.org/story/12/05/29/176252/ask-slashdot-find-a-job-in-china-for-non-native-speaker
I'd suggest sticking to your field and getting a job with a big U.S. player with offices in Hong Kong, Both Google and IBM have offices there, although IBM has many more openings posted at the moment.
Caveat: I work in data/risk management software in the financial sector. Also, I'm feeling a bit under-the-weather today, so sorry if this is less than coherent or comes off rambly.
When the GP says "give", I think they're aware that there are conditions built into that giving - I'd have a hard time believing they think bank loans are essentially gifts. But from the sound of your response, it seems you're against even this conditional-lending definition of 'give'...
So, following your logic... loans should be given to startup companies by institutions who *aren't* concerned about making a profit from the deal? Just wondering... why would anyone *with* money lend it to me (for the business I hope to start some day) if they had nothing to gain? Where should I go for capital?
If someone's willing to let me use their money now, on the hopes (which they share with me) that in the future, my business will thrive and I'll be able to pay them back with a bit on the side - I'll be happy for the deal! But there's the thing - do we really only want investors in ideas that "sound good" to someone at the bank, and which some lender personally can get behind (how would I find such a person for *my* business)? Realistically, a bank shouldn't care about me, nor my business - an investment system where the lenders line-item your expenditures and approve purchase-by-purchase aligned with my stated business plan would be a nightmare - our current system allows for banks to ignore the nitty-gritty details of my operations, assessing their risk by evaluating the market as a whole, my industry within it, my corporation within my industry, any past books we may have, potential collateral, etc... then charging me a spread above their costs to *get* the money they want to lend me. Perhaps if the government would just start lending directly to the people (at no interest as you seem to want?) we could have a functional world without interest-gatherers (and no inflation, too)... but for all sorts of reasons I don't see that going anywhere.
If I take their money, only to realize later that I'm unable to pay them back... well, we have courts for that to try to get them back at least what they gave me, but generally they'll go for the amount *I agreed to give them back*, regardless of whether I have that in liquid assets. I'd really rather not lose my house over it, but again - were they not able to take my assets as remuneration, you can bet your ass they'd either be out of the game (and not lending to just about anyone), or raising rates to account for all the non-payback.
So, parent poster; If you've got enough in the bank to cover the economy out of goodwill - please get to work. I'll call you first when I need $200k for brewing equipment, farm implements, and a robotics lab, and a commercial kitchen (yeah, my dream company will be that awesome). Thankfully, from the sound of things, you seem to think it's best not to charge interest, so you'll have the best rates around and will get all the business.
No, I don't think most financial institutions are well run, accurately measure risk, properly analyze any of the points I mentioned previously (or realize that their simplified models leave out lots of important real-world information - but that's another hours-long rant). *But* I think it's very clear that without some incentives (eg: a spread on every loan, and some gov't protection from too many people defaulting at once (asset seizure laws + trustworthy insurance + etc...)), nobody with money would have any reason to lend - only to spend. Trickle-down doesn't work well enough to make that a place I'd like to live.
I'm not good at making signatures...
When the GP says "give", I think they're aware that there are conditions built into that giving - I'd have a hard time believing they think bank loans are essentially gifts. But from the sound of your response, it seems you're against even this conditional-lending definition of 'give'...
No, not really, I'm just against usury. Which is what much of venture capital funding is. When you have nowhere else to go, it's easy to sign up for being exploited. Bankruptcy in the future smells better than bankruptcy now.
When I was back in HK back in 2007, I toured Wing Lung bank and was amazed at the number of people employed in that bank. When the stacks of paper that flowed through that place were taller than the people going through them.... Yeah, plenty of jobs for paper pushers....
Flamebait
Serious inquiries only.
I used to work for Misys until recently. They are doing some development on their Summit application http://www.misys.com/products/summit-ft.aspx in the far East as well. You could try to look 'em up, although if the work conditions are similar to what the offer in Romania, you're probably better of in a different company. Also, you should note that the entire backend of the application (which runs on a complex distributed server architecture) is written in C, which they tried really hard to upgrade to C++, and it ended up being a big maintenance from hell nightmare. Also, they decided to make a "fancy" C# frontend desktop application for that backend, which is full of bugs. As a side note, don't expect much documentation about the code structure and internal logic, just many 6000+ line functions of C code ;)