|
Welp. I had a Microsoft interview to intern as a software developer.
It was weird. There was quite a bit of misinformation flying at me, and I was left with a rather disturbing feeling. First off I was interviewed by a project manager instead of a software engineer, which seemed weird right off the bat. I mean sure PMs are really cool people, but they don't code day to day in their job. I'm a programmer, and didn't expect this.
So here's how it went summarized (capitol I is the interviewer): I: What year are you graduating? Me: 2015. Me in my head: What..? Does it matter? I'm interviewing as an intern. Am I disqualified now that you know I won't be able to be hired in a year?
I: What is something you've worked on lately that was difficult yet interesting? Me: Custom reflection in C++. Blah blah C++ doesn't have native reflection, so I blah blah wrote a lot of cool stuff. I: Wait what? You used C++ introspection? Me in my head: Does he not realize that C++ has no built-in (functioning) RTTI? Did I mention the RTTI native to C++ doesn't work? Did he just mis-hear me? Me: C++ doesn't have native introspection, so I did it myself. I: Why? Me: Well it has these benefits... (pretty much I wrote some code that writes a lot of code for me, which is helpful for time budgets!).
I: Write a function that takes two numbers and returns which is larger. Each number is a string of characters with each character as a digit. Me: <clears up ambiguities like what language this must be in, the format of each number, error handling etc. His responses seemed like he was just plain tired. I was his last interview after a marathon of many interviews for two days straight, and he seemed to be annoyed I was asking questions.> Me: Write's the following function: + Show Spoiler +// Returns -1 if lhs is larger, 0 if equavilant, and 1 if rhs is larger // Assumes lhs and rhs are both strings with only decimal digits, e.g. "123" or "12005" // Also assumes there are no preceding zeros like so: "0052" int IntegerAsStringCompare( const char *lhs, const char *rhs ) { int lhs_len = strlen( lhs ); int rhs_len = strlen( rhs ); // Early out with string lengths if(lhs_len > rhs_len) return -1; else if(rhs_len > lhs_len) return 1;
// Strings are equal length, compare each digit one by one else { // lhs and rhs are equal length, so no need for comparison // to have lhs && rhs while(lhs) { if(*lhs > *rhs) return -1; else if(*rhs > *lhs) return 1; ++lhs; ++rhs; } // Our numbers are equivalent return 0; } } I talked all about how to support additional number formats such as floats, hex, octal, etc. I talked about error handling as well. I only had a 25 minute interview, so I had to get something on paper and demonstrate I knew how to add onto it to make the entire thing robust in a short amount of time. I mean sure I could improve this function in a few ways, but I wrote it in hardly any time at all and specifically pointed out a lot of ways to improve it, if I had the time to.
I: So next question. You have an array of 17 integers, and each slot's value is it's indexed position. However one index is a duplicate. How do you find what the duplicate is? Me: N^2 search with a boolean. A faster way would be to add each index's value up and subtract from the expected sum. I: Okay good. What would you do if the array was very large and overflow would occur? Me: Integer overflow? I: Yes. Me: Can I use an external data structure? I: Sure. Me: I could use an external data structure to handle insertions and respond when a duplicate entry is found, such as a modified version of a hash table. Me: Another solution would be to use multiple integers to emulate a larger data range. In CS 100 we had to add two 16 bit integers with 8 bit values, and I could do the same thing here. I: We're out of time!
Interview session ends. I believe I answered the questions fairly well, and I answered them nearly identically to some other interviewees that I know (and that I know are very competent programmers).
Now I was told before the interview that everyone being interviewed in the two days could move on and be hired. The person that told me this said they had very specific instructions that everyone could be hired. I was also told before the interview that I could receive the feedback the interviewer wrote down on notes during the interview.
I requested this feedback and was denied, and the denial said that me seeing that information was a break of company policy.
I was also denied an internship for this summer. The reason was that internship positions are very limited. I was also told (through an indirect source) that the main reason people were declined was due to a lack of technical capability. Technical capability? We write game engines from scratch. Is this an easy thing to do? Man students in other schools must be doing really cool things if what I'm doing is technically unadvanced. However I read articles and talk to other professor and am lead to believe that the programmers from my school are quite excellent. Am I just on the lower end of "quite excellent"? This just doesn't all add up.
Honestly I feel like I was declined because I'm a Sophomore. On top of this the interviewer actually seemed annoyed when I would ask initial questions to clear up ambiguity during one of the interview questions. The interviewer also didn't seem to know that C++ didn't have built in introspection (that is usable), unlike other languages such as C#. My interviewer was a Project Manager, and said he didn't hardly code in his day to day job.
I'm just plain confused and am left with a really awkward feeling about all this. Every single Sophomore was declined a position, and I _know_ a lot of these Sophomores are very good programmers. A couple Juniors were admitted. Some very strong Juniors were denied. What is going on here? In the words of my friend (who was just expressing frustration and confusion): "I should write a PRNG to admit or decline applicants... It would at least do a better job than what's currently going on."
Apparently everyone dislikes Microsoft's hiring process and it's in a very poor state of quality currently. I don't have a direct opinion about Microsoft's hiring process that I want to share, but I do know that the feeling I was left with wasn't one that I enjoyed. I've had other interviews before, but this one felt different in a bad way.
Pretty much how I felt a little while later: + Show Spoiler [HowIFelt] +
Even though I bring bad news, there is good news yet! I have some other leads to follow. Even though I had a bad experience things turned out quite well overall. I was actually working on solving something a company sent me as a pre-interview test just earlier today!
|
cool read. best of luck on your endeavors sir
|
Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle?
|
On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again
|
On March 13 2013 15:32 CecilSunkure wrote:Show nested quote +On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again
samurai noodles, tetsu max is soooo goood.
That picture is how i was after my logic finals. I was 2 for 3 today. Did hella good in bio and o-chem and totally tanked my logic class.
UGGGGGG
GL Cecil, I'm sure it will all work out.
Does your internship have to be in redmond or would seattle work as well?
|
On March 13 2013 15:32 CecilSunkure wrote:Show nested quote +On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again
You live in Redmond? Sweet! I'm house-hunting there right now and will move down in May. I'll see you there!
|
On March 13 2013 15:38 Chairman Ray wrote:Show nested quote +On March 13 2013 15:32 CecilSunkure wrote:On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again You live in Redmond? Sweet! I'm house-hunting there right now and will move down in May. I'll see you there! Cool we can go out for lunch sometime
On March 13 2013 15:38 MysteryMeat1 wrote: GL Cecil, I'm sure it will all work out.
Does your internship have to be in redmond or would seattle work as well? Oh I'm okay with working somewhere else in the US. The Seattle area is ideal of course, since it's cheaper than moving (I'd have to pay two monthly rents if I moved). Like right now I'm working on a written test for a place in California! Don't want to say specifically where just yet though
|
On March 13 2013 15:39 CecilSunkure wrote:Show nested quote +On March 13 2013 15:38 Chairman Ray wrote:On March 13 2013 15:32 CecilSunkure wrote:On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again You live in Redmond? Sweet! I'm house-hunting there right now and will move down in May. I'll see you there! Cool we can go out for lunch sometime Show nested quote +On March 13 2013 15:38 MysteryMeat1 wrote: GL Cecil, I'm sure it will all work out.
Does your internship have to be in redmond or would seattle work as well? Oh I'm okay with working somewhere else in the US. The Seattle area is ideal of course, since it's cheaper than moving (I'd have to pay two monthly rents if I moved). Like right now I'm working on a written test for a place in California! Don't want to say specifically where just yet though
I was just wondering, because my dad's best friend works at UW hospital as a programmer for coding and stuff. He says theres usually quite a few internships. I'll see him on Friday if you want me to ask about specifications and requirements for getting an internship.
|
On March 13 2013 15:42 MysteryMeat1 wrote:Show nested quote +On March 13 2013 15:39 CecilSunkure wrote:On March 13 2013 15:38 Chairman Ray wrote:On March 13 2013 15:32 CecilSunkure wrote:On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again You live in Redmond? Sweet! I'm house-hunting there right now and will move down in May. I'll see you there! Cool we can go out for lunch sometime On March 13 2013 15:38 MysteryMeat1 wrote: GL Cecil, I'm sure it will all work out.
Does your internship have to be in redmond or would seattle work as well? Oh I'm okay with working somewhere else in the US. The Seattle area is ideal of course, since it's cheaper than moving (I'd have to pay two monthly rents if I moved). Like right now I'm working on a written test for a place in California! Don't want to say specifically where just yet though I was just wondering, because my dad's best friend works at UW hospital as a programmer for coding and stuff. He says theres usually quite a few internships. I'll see him on Friday if you want me to ask about specifications and requirements for getting an internship. Oh yeah totally! It can't hurt so sure why not. Thanks a lot!
|
On March 13 2013 15:45 CecilSunkure wrote:Show nested quote +On March 13 2013 15:42 MysteryMeat1 wrote:On March 13 2013 15:39 CecilSunkure wrote:On March 13 2013 15:38 Chairman Ray wrote:On March 13 2013 15:32 CecilSunkure wrote:On March 13 2013 15:30 Chairman Ray wrote: Sorry you didn't get an offer, but don't give up, there are plenty of other great companies out there. I remember when I went to interview, one of the interns that got hired was a PhD student, so as a sophomore, you really have the short end of the stick. What else did you do while you were in Seattle? I live in Redmond! Hehe. Thanks for the kind words, I do appreciate it. So after the interview while in Seattle we all actually went to a nice place called Samurai Noodle in the International District. Love that place. I actually went last night as well! Ooooh I want to go again You live in Redmond? Sweet! I'm house-hunting there right now and will move down in May. I'll see you there! Cool we can go out for lunch sometime On March 13 2013 15:38 MysteryMeat1 wrote: GL Cecil, I'm sure it will all work out.
Does your internship have to be in redmond or would seattle work as well? Oh I'm okay with working somewhere else in the US. The Seattle area is ideal of course, since it's cheaper than moving (I'd have to pay two monthly rents if I moved). Like right now I'm working on a written test for a place in California! Don't want to say specifically where just yet though I was just wondering, because my dad's best friend works at UW hospital as a programmer for coding and stuff. He says theres usually quite a few internships. I'll see him on Friday if you want me to ask about specifications and requirements for getting an internship. Oh yeah totally! It can't hurt so sure why not. Thanks a lot!
before I talk to him, what languages can you program?
|
sounds pretty terrible, where are you at school cecil?
|
bad interview experience, but sounds like you yourself did not perform poorly in the interview
just view it as a new experience and think of how you might have approached/responded to a question differently
you're going to have interviewers that stay pretty neutral in their demeanor, ones that will respond to how in-depth/interested you can answer questions, and ones that don't really want to interview because they'd rather focus their time elsewhere but must because it's part of their job responsibility
did you have only 1 interview that lasted 30 minutes? that seems pretty lacking.
|
I couldn't help but feel you were looking down on your interviewer just because he's a PM. Just because he didn't know a specific thing in C++ (see *), it does not mean he's not technical. Even if he wasn't technical, he didn't need to be, as he could be evaluating your soft skills like your abilities to communicate clearly.
The fact that they are willing to interview you means they are willing to hire you. When he asked, 'when are you graduating', it was probably just a simple comment meant to break the ice, but instead, you took it as a reason to not hire you.
I think you need to change your attitude. Try finding faults in yourself rather than the company or the interviewers.
I know plenty of people who have received internship and full time offers from MSFT, myself included, and the process is definitely, by and large, fair.
(*) I don't know what you mean by
Me in my head: Does he not realize that C++ has no built-in (functioning) RTTI? Did I mention the RTTI native to C++ doesn't work? Did he just mis-hear me?
Me: C++ doesn't have native introspection, so I did it myself.
How does RTTI native to C++ not work? The term 'RTTI' was coined by the C++ Standards. It doesn't go very far in implementing reflection, but it does what it is supposed to do: Run-Time Type Information.
C++ does have native introspection, it's called type introspection.
Going from your interviewer's train of thought, it would probably leverage RTTI, which will provide the basis for you to build your reflection framework. You would probably derive all your classes from a base class like Object in Java, and that class would provide methods like 'GetProperty', 'GetMethod', 'GetBaseClass', etc.
|
On March 13 2013 16:27 Cambium wrote:I couldn't help but feel you were looking down on your interviewer just because he's a PM. Just because he didn't know a specific thing in C++ (see *), it does not mean he's not technical. Even if he wasn't technical, he didn't need to be, as he could be evaluating your soft skills like your abilities to communicate clearly. The fact that they are willing to interview you means they are willing to hire you. When he asked, 'when are you graduating', it was probably just a simple comment meant to break the ice, but instead, you took it as a reason to not hire you. I think you need to change your attitude. Try finding faults in yourself rather than the company or the interviewers. I know plenty of people who have received internship and full time offers from MSFT, myself included, and the process is definitely, by and large, fair. (*) I don't know what you mean by Show nested quote + Me in my head: Does he not realize that C++ has no built-in (functioning) RTTI? Did I mention the RTTI native to C++ doesn't work? Did he just mis-hear me?
Me: C++ doesn't have native introspection, so I did it myself.
How does RTTI native to C++ not work? The term 'RTTI' was coined by the C++ Standards. It doesn't go very far in implementing reflection, but it does what it is supposed to do: Run-Time Type Information. C++ does have native introspection, it's called type introspection. Going from your interviewer's train of thought, it would probably leverage RTTI, which will provide the basis for you to build your reflection framework. You would probably derive all your classes from a base class like Object in Java, and that class would provide methods like 'GetProperty', 'GetMethod', 'GetBaseClass', etc. Well, I understand I sound pretty negative. Thanks a lot for the words, I appreciate hearing what others think. I'll do some more reflecting on what I myself could do to improve for my next interview.
I definitely did not think anything negative of the company right after the interview. I just felt like something was off. After reflecting and talking with my superiors I realized a lot more about the interview. It's especially strange because I've heard of some previous interviews earlier in the year from friends of mine, and they did very well (hired). There's a lot of mixed information flying around, and it's especially disheartening when the information company employees directly gave me was contradicting in multiple different instances.
The native type introspection doesn't really work, and is very compiler dependent. Some output is just plain broken. An attempt was made for C++ RTTI, but honestly everyone I know of just disables C++ RTTI in their builds and uses a custom system for type reflection.
On March 13 2013 16:23 udgnim wrote: did you have only 1 interview that lasted 30 minutes? that seems pretty lacking. It was 25 minutes
|
On March 13 2013 16:37 CecilSunkure wrote:Show nested quote +On March 13 2013 16:27 Cambium wrote:I couldn't help but feel you were looking down on your interviewer just because he's a PM. Just because he didn't know a specific thing in C++ (see *), it does not mean he's not technical. Even if he wasn't technical, he didn't need to be, as he could be evaluating your soft skills like your abilities to communicate clearly. The fact that they are willing to interview you means they are willing to hire you. When he asked, 'when are you graduating', it was probably just a simple comment meant to break the ice, but instead, you took it as a reason to not hire you. I think you need to change your attitude. Try finding faults in yourself rather than the company or the interviewers. I know plenty of people who have received internship and full time offers from MSFT, myself included, and the process is definitely, by and large, fair. (*) I don't know what you mean by Me in my head: Does he not realize that C++ has no built-in (functioning) RTTI? Did I mention the RTTI native to C++ doesn't work? Did he just mis-hear me?
Me: C++ doesn't have native introspection, so I did it myself.
How does RTTI native to C++ not work? The term 'RTTI' was coined by the C++ Standards. It doesn't go very far in implementing reflection, but it does what it is supposed to do: Run-Time Type Information. C++ does have native introspection, it's called type introspection. Going from your interviewer's train of thought, it would probably leverage RTTI, which will provide the basis for you to build your reflection framework. You would probably derive all your classes from a base class like Object in Java, and that class would provide methods like 'GetProperty', 'GetMethod', 'GetBaseClass', etc. Well, I understand I sound pretty negative. Thanks a lot for the words, I appreciate hearing what others think. I'll do some more reflecting on what I myself could do to improve for my next interview. I definitely did not think anything negative of the company right after the interview. I just felt like something was off. After reflecting and talking with my superiors I realized a lot more about the interview. It's especially strange because I've heard of some previous interviews earlier in the year from friends of mine, and they did very well (hired). There's a lot of mixed information flying around, and it's especially disheartening when the information company employees directly gave me was contradicting in multiple different instances. The native type introspection doesn't really work, and is very compiler dependent. Some output is just plain broken. An attempt was made for C++ RTTI, but honestly everyone I know of just disables C++ RTTI in their builds and uses a custom system for type reflection.
On a change of subject
How did you implement your reflection? Doing it through RTTI is definitely not ideal, did you do it via templates?
|
Yeah! You can actually see most of what I have currently here. I use template metaprogramming for basically everything. There are some missing features I'll be adding this summer in my spare time: + Show Spoiler [FeatureList] +-Lua reference and value type (only have reference) -Serialization versioning -Inheritance meta -Manual force linking for all meta objects -Auto pointer meta reg -Not require default constructor -MetaData bitfield support -Archetype compression for level files -Refactor meta with properties -Meta type conversion cleanup -Property gettor/settor with Reflection -Run-time editting of enumerations -Enumeration values linked to other enumeration tables -VariantFunction currently does: jump call jump call, can be optimized to push call with template magic. Minimizes VariantFunction memory footprint too.
|
Whoa, I've read some of your past blogs and awww it's a shame they didn't decide to take you on. I don't code myself, but you REALLY look like you know what you're doing lol, I'm sure that in the long run you'll be snapped up. Pretty interesting story and whoa, all that technical information is daunting yet looks pretty cool
|
Sorry to hear it didn't work out for you. For what it's worth, you're probably right that you didn't get hired because you were a sophomore. I talked to a Microsoft recruiter at my university's CS career fair maybe 6 weeks ago and he said that essentially they had already filled most of the slots for their internship program for sophomores and were really only looking for juniors and really, truly exceptional sophomores. Not that that doesn't make getting turned down feel any less shitty, but...
|
I've heard bad things about working for microsoft. They expect many hours, weekend work, etc. It depends on the group though. Everyone is competitively ranked with their peers. So there's this situation were you've got a lot of really smart people trying to figure out how to make themselves look good and others look bad.
Just what I've heard.
|
All the nontrivial stuff in C++ is done using template metaprogramming, how is that even a question?
Without having looked deeply into your documentation, it sounds like you have to register metadata about all your classes manually. So it won't work with classes that you didn't develop yourself, and obviously also has the issue of having to maintain 2 pieces of code when you want to modify a class? Doesn't seem like it would be easily avoidable, but still it's not exactly most convenient. I guess the only option to avoid redundant information would be to think of a method to have the reflection system produce the class itself while at the same time reading the metadata from a class metaspecification... or something like that. That's a lot of meta though.
In any case; the world doesn't always make sense. In fact it rarely does. Just try again.
|
On March 13 2013 17:07 fight_or_flight wrote: I've heard bad things about working for microsoft. They expect many hours, weekend work, etc. It depends on the group though. Everyone is competitively ranked with their peers. So there's this situation were you've got a lot of really smart people trying to figure out how to make themselves look good and others look bad.
Just what I've heard.
I don't expect Microsoft has long hours anymore than any other major tech company. It may happen sometimes when you are near a deadline, but I think that's normal around deadline/crunch time. College students in general are use to crunch time to finish up projects in the last minute or exams (granted there may be some people who actually don't procrastinate and therefore don't have a crunch time near the end of the quarter).
To the interviewee: It sounds like you just got unlucky because of circumstances out of your control if they had quota on the number of people they could bring on as interns. Sometimes things don't work out no matter how hard you try, I would just take it as a practice for future interviews, figure out if you could have improved anything and move on.
|
On March 13 2013 17:40 spinesheath wrote:All the nontrivial stuff in C++ is done using template metaprogramming, how is that even a question? Without having looked deeply into your documentation, it sounds like you have to register metadata about all your classes manually. So it won't work with classes that you didn't develop yourself, and obviously also has the issue of having to maintain 2 pieces of code when you want to modify a class? Doesn't seem like it would be easily avoidable, but still it's not exactly most convenient. I guess the only option to avoid redundant information would be to think of a method to have the reflection system produce the class itself while at the same time reading the metadata from a class metaspecification... or something like that. That's a lot of meta though. In any case; the world doesn't always make sense. In fact it rarely does. Just try again. Yeah can register metadata for types you don't have source code to I was very careful to allow this. I also know how to reflect private members (but haven't yet) for types you don't have source access to.
The only way to avoid the redundancy is to use a custom preprocessor, or like you said have the meta generate the class -which I've done in C: https://github.com/RandyGaul/Serialization_C
|
Bisutopia19034 Posts
At least your exam questions were pretty easy. Imagine taking programming questions that have an a choice of 5 possible answers and at any time 1 to 3 of them may be a correct reply. Each time you answer correct the questions will get harder. That straight up messed with my head. Or at cryptic studios where it is a single question but the allotted time to answer it is anything between 4 hrs and 24 hrs.
As far as your interviewer goes, it does suck getting one that disagrees with you but that's always going to be the battle in the programming world. Just keep applying else where and get a good job. Microsoft miss on a good opportunity with you I'm sure but it doesn't mean there aren't better places to work .
|
Welcome to the real world. Any promess not written is as good as nothing. If they tell you something that you thing is interesting, as for it in a written form. "You can get access to the interview notes" -> "Please mail me the instructions how to do so" And this is awkward to ask..
Anyway, some rookie mistakes you made during the interview. Showing lack of flexibility, "I am right, I did the only acceptable solution, I know everything, every possible solution". If I interview someone, I just give negative points for team work in my head. Interns come to learn from more experienced colleagues. It's all about the attitude, "I'm not being interviewed by a programmer, but by a manager"... What did you expect? A manager screens you if you'll do fine with his team (even if you'd end up somewhere else).
No I don't even know why you want to get in Microsoft, there are far greater opportunities out there and definitely starting out in a heavy corporate company won't develop you in the right way to have a successful carrier.
Was there discussion about salaries? How much would you want to get from an internship? What are the skills you'd want to develop?
Failing an interview is really not the end of the world. Job interviews are a separate skill and it is a lot like seduction, you are not there to argue.
You need to have more experience in this situation, stop thinking it as a school test where you have question and the only thing that matter is that you get them right or wrong...
Of course I'm judging you now based on your frustration blog post afterward and can't really know how you were in the situation. If you want, I can have you a fake job interview for my company over Skype and give you feedback if you think it can help you. (I'm doing around 30-40 intern interview each year)
|
I practically live at Samurai Noodle sometimes, love that place so much,
|
Estonia4644 Posts
ahhh I know what the problem was
you can't spell "equivalent" in the code comments thats probably what tipped the scales
:D Head up high, the "quite excellent" scale is bound to be successful
|
On March 14 2013 02:00 fusefuse wrote: ahhh I know what the problem was
you can't spell "equivalent" in the code comments thats probably what tipped the scales He probably should have started a page-long rant in the comments about the ASCII specification which allows this code to work as intended. Especially why it was so clever to put all the numbers in one place and in ascending order, as opposed to the more intuitive way of scattering them randomly.
|
I think a general rule of thumb for interviews is that unless you really rocked the interview don't expect an offer. There are always a few other amazing people out there who are interviewing with you, and there is always bias based on the interviewer. You will do better next time
|
Take the interview as a learning experience. And don't let digipen go to your head; it's the students that made digipen's reputation, not the other way round. And at least from this posted interview, I didn't really feel that any 'wow' factor coming from you, but maybe its because I've known reflection systems for some time. Go read up more comp sci stuff, throw in more non brute-force methods as answers (the interviewer probably heard of a dozen brute force algorithms for some time). Interviews are for impressing.
|
I can't comment on the C++ questions because it's not really my thing. I can comment on the algorithmic question though : why don't you just quicksort the thing ?
|
On March 14 2013 04:14 ddengster wrote: Take the interview as a learning experience. And don't let digipen go to your head; it's the students that made digipen's reputation, not the other way round. And at least from this posted interview, I didn't really feel that any 'wow' factor coming from you, but maybe its because I've known reflection systems for some time. Go read up more comp sci stuff, throw in more non brute-force methods as answers (the interviewer probably heard of a dozen brute force algorithms for some time). Interviews are for impressing. Thank you for the advice
|
There is this one quote from bill gates(i am paraphrasing):"whenever there is a really hard, tedious job, I give that to the most lazy employee, because I know he will find a workaround". I do not bother to question your skills as a programmer, I do question that you are the best. Because you only need a handful of really great programmers, and there are a lot out there competing with you. I have the theory that they are looking for the other handful of people you need, the weird people in these interviews, because in an internship they also can test new people without having to commit much on their behalf and find the laziest people. I think a well trained code monkey can always be hired when he is readily produced in the mind factory, so if you really wanna go to microsoft, try again when you are finished. They probably want someone who thinks about quitting his studies, a misfit, so they can leech from his creative vein, while paying him less and making it harder for him to go to another company.
|
Microsoft want a misfit? ROFL
I don't think it's anything within OP's control. There are probably internal forces at work here, maybe the PM who interviewed wanted some one with this this and this skillset, you didn't tick the box. Maybe he doesn't like your hairstyle, maybe he just cbfed take on another intern this year.... there are sooo many things that happen behind the scene in a big company that can screw you over.
To people telling Op to review his attitude, are you for real? OP can't change who he is, how he thinks, how he works, interview is a two way street, you are interviewing the employer the same way they are interviewing you, do not bend over, especially since OP have other options.
|
It definitely sounds like you had an unlucky interview.
From your description of the interview, though, it seems like you're definitely a highly competent programmer so I wouldn't let this interview get to you. You should try to apply to some other big name software companies. I'm sure at least one of those interviews if not all, will go well for you.
I agree with you that the interview process is far from perfect. I had an on-site interview with Amazon where I was asked fairly difficult coding questions but some of my friends were asked to interview on our school campus and they had much easier questions. I do believe, however, that if you're a good programmer, you'll land an internship or job at one of the big software companies if you try. It's kinda like how some kids get into MIT but are rejected from Carnegie Mellon or something.
Don't give up! Keep trying!
|
On March 13 2013 15:04 CecilSunkure wrote: I: So next question. You have an array of 17 integers, and each slot's value is it's indexed position. However one index is a duplicate. How do you find what the duplicate is? Me: N^2 search with a boolean. A faster way would be to add each index's value up and subtract from the expected sum. I: Okay good. What would you do if the array was very large and overflow would occur? Me: Integer overflow? I: Yes. Me: Can I use an external data structure? I: Sure. Me: I could use an external data structure to handle insertions and respond when a duplicate entry is found, such as a modified version of a hash table. Me: Another solution would be to use multiple integers to emulate a larger data range. In CS 100 we had to add two 16 bit integers with 8 bit values, and I could do the same thing here. I: We're out of time! Hey with this one can you clarify what the problem is? Is it something along the lines of:
[0][1][2][3][4][5][6][7][8][3][10][11][12][13][14][15][16]
Where 3 is duplicated, or are the numbers allowed to be larger than the array length?
|
That's unfortunate the interview didn't work out. I've got a couple of points:
I was a MSFT intern last summer and will be again this summer, and I got my position when i did the first round in September, followed by a second round in December. So maybe next year try interviewing earlier as they have have more spots available then. Along the same lines as this: I know a lot of people who didn't get through the interview process last year, but then they interviewed again this year and got internships.
2nd: sometimes you and your interviewer unfortunately just don't click as well. I know for me I did a ton of interviews this year for other coop positions and sometimes I'd click with the interviewer and the rest would be easy, and sometimes I wouldn't and it would just make everything about the interview a little harder / more complicated.
From all your game dev posts here I certainly think you've got the technical chops and you're on the right track so if you keep doing what you've been doing you'll have more than enough offers.
|
On March 14 2013 19:49 fonger wrote:Show nested quote +On March 13 2013 15:04 CecilSunkure wrote: I: So next question. You have an array of 17 integers, and each slot's value is it's indexed position. However one index is a duplicate. How do you find what the duplicate is? Me: N^2 search with a boolean. A faster way would be to add each index's value up and subtract from the expected sum. I: Okay good. What would you do if the array was very large and overflow would occur? Me: Integer overflow? I: Yes. Me: Can I use an external data structure? I: Sure. Me: I could use an external data structure to handle insertions and respond when a duplicate entry is found, such as a modified version of a hash table. Me: Another solution would be to use multiple integers to emulate a larger data range. In CS 100 we had to add two 16 bit integers with 8 bit values, and I could do the same thing here. I: We're out of time! Hey with this one can you clarify what the problem is? Is it something along the lines of: [0][1][2][3][4][5][6][7][8][3][10][11][12][13][14][15][16] Where 3 is duplicated, or are the numbers allowed to be larger than the array length? Actually I've been wondering about this too. I would imagine an array like your example. In which case a binary search doesn't seem to accomplish anything since you have no way to decide in which half the odd value is.
I would imagine the interviewee is supposed to say "iterate over the array and check a[i] == i". Then the interviewer asks about the overflow, and the answer is supposed to be "check if a[0] == 0, then check whether a[i+1] - a[i] == 1 holds true". Or something like that, I haven't actually thought it through for the overflow, I just have a hunch that it would work :p
|
You go to UW Me too!
|
On March 13 2013 22:08 0x64 wrote: Welcome to the real world. Any promess not written is as good as nothing. If they tell you something that you thing is interesting, as for it in a written form. "You can get access to the interview notes" -> "Please mail me the instructions how to do so" And this is awkward to ask..
Anyway, some rookie mistakes you made during the interview. Showing lack of flexibility, "I am right, I did the only acceptable solution, I know everything, every possible solution". If I interview someone, I just give negative points for team work in my head. Interns come to learn from more experienced colleagues. It's all about the attitude, "I'm not being interviewed by a programmer, but by a manager"... What did you expect? A manager screens you if you'll do fine with his team (even if you'd end up somewhere else).
No I don't even know why you want to get in Microsoft, there are far greater opportunities out there and definitely starting out in a heavy corporate company won't develop you in the right way to have a successful carrier.
Was there discussion about salaries? How much would you want to get from an internship? What are the skills you'd want to develop?
Failing an interview is really not the end of the world. Job interviews are a separate skill and it is a lot like seduction, you are not there to argue.
You need to have more experience in this situation, stop thinking it as a school test where you have question and the only thing that matter is that you get them right or wrong...
Of course I'm judging you now based on your frustration blog post afterward and can't really know how you were in the situation. If you want, I can have you a fake job interview for my company over Skype and give you feedback if you think it can help you. (I'm doing around 30-40 intern interview each year)
this is a fantastic response. the biggest problem with software people is that they have a more difficult time seeing the bigger picture a lot of the time.
|
On March 14 2013 23:32 spinesheath wrote:Show nested quote +On March 14 2013 19:49 fonger wrote:On March 13 2013 15:04 CecilSunkure wrote: I: So next question. You have an array of 17 integers, and each slot's value is it's indexed position. However one index is a duplicate. How do you find what the duplicate is? Me: N^2 search with a boolean. A faster way would be to add each index's value up and subtract from the expected sum. I: Okay good. What would you do if the array was very large and overflow would occur? Me: Integer overflow? I: Yes. Me: Can I use an external data structure? I: Sure. Me: I could use an external data structure to handle insertions and respond when a duplicate entry is found, such as a modified version of a hash table. Me: Another solution would be to use multiple integers to emulate a larger data range. In CS 100 we had to add two 16 bit integers with 8 bit values, and I could do the same thing here. I: We're out of time! Hey with this one can you clarify what the problem is? Is it something along the lines of: [0][1][2][3][4][5][6][7][8][3][10][11][12][13][14][15][16] Where 3 is duplicated, or are the numbers allowed to be larger than the array length? Actually I've been wondering about this too. I would imagine an array like your example. In which case a binary search doesn't seem to accomplish anything since you have no way to decide in which half the odd value is. I would imagine the interviewee is supposed to say "iterate over the array and check a[i] == i". Then the interviewer asks about the overflow, and the answer is supposed to be "check if a[0] == 0, then check whether a[i+1] - a[i] == 1 holds true". Or something like that, I haven't actually thought it through for the overflow, I just have a hunch that it would work :p
Yeah, based on how he worded the question, I think a[i] = i (except for the duplicate), so just one pass is needed (O(n))?
|
Also, I don't be surprised that you were interviewed by a project manager. It is definitely possible they were once the head software developer for a project and just got promoted.
|
Just to clear something up here:
I'm almost 100% certain that the guy is a program manager (rather than a project manager). Program manager, SDE and SDET are the three legs holding up the development tripod for Microsoft, and they claim that you can move roles very easily between them. I applied as a PM, but was told to interview as an SDET, and was offered a job as an SDE because they said it was a better fit.
PMs are definitely a lot less technical than the other two despite what Msft may tell you, but they can definitely hold a conversation with a technical person (which is their role).
|
On March 15 2013 13:23 Pseudoku wrote:Show nested quote +On March 14 2013 23:32 spinesheath wrote:On March 14 2013 19:49 fonger wrote:On March 13 2013 15:04 CecilSunkure wrote: I: So next question. You have an array of 17 integers, and each slot's value is it's indexed position. However one index is a duplicate. How do you find what the duplicate is? Me: N^2 search with a boolean. A faster way would be to add each index's value up and subtract from the expected sum. I: Okay good. What would you do if the array was very large and overflow would occur? Me: Integer overflow? I: Yes. Me: Can I use an external data structure? I: Sure. Me: I could use an external data structure to handle insertions and respond when a duplicate entry is found, such as a modified version of a hash table. Me: Another solution would be to use multiple integers to emulate a larger data range. In CS 100 we had to add two 16 bit integers with 8 bit values, and I could do the same thing here. I: We're out of time! Hey with this one can you clarify what the problem is? Is it something along the lines of: [0][1][2][3][4][5][6][7][8][3][10][11][12][13][14][15][16] Where 3 is duplicated, or are the numbers allowed to be larger than the array length? Actually I've been wondering about this too. I would imagine an array like your example. In which case a binary search doesn't seem to accomplish anything since you have no way to decide in which half the odd value is. I would imagine the interviewee is supposed to say "iterate over the array and check a[i] == i". Then the interviewer asks about the overflow, and the answer is supposed to be "check if a[0] == 0, then check whether a[i+1] - a[i] == 1 holds true". Or something like that, I haven't actually thought it through for the overflow, I just have a hunch that it would work :p Yeah, based on how he worded the question, I think a[i] = i (except for the duplicate), so just one pass is needed (O(n))?
That's probably too simple.
I'd imagine it's something like you have numbers 1 to n randomly distributed in an array of size (n+2). Two of which are dupes, find out what they are...
Now, this would be an interesting question because the typical response would be:
1. O(n^2) runtime: two loops 2. O(n) memory: hash map 3. O(n log n): sort then traverse
Then I would guess the interviwer would lead the interviewee towards an O(n) runtime solution without extra space: + Show Spoiler +think about it
It's a big possibility that the interviewer screwed it up
|
But "each slot's value is it's indexed position" strongly hints at a non-random relation between the value and its position... He would have messed up quite hard then. Unless of course he messed up a bit and then Cecil messed up some more while rephrasing it.
Also does your version lead to any problems with overflows as they came up in the follow-up question? + Show Spoiler [my idea for Cambium's version] +Actually, my idea would be to abuse the sign bit assuming we have signed integers (marking the array index for which we already found the corresponding value), and that obviously wouldn't work if we already have negative values due to overflow... But thanks to the value 0 that would be quite the hack, involving actual bit manipulation. Also: hilariously bad cache usage in the case of a very large array.
|
On March 15 2013 17:29 spinesheath wrote:But "each slot's value is it's indexed position" strongly hints at a non-random relation between the value and its position... He would have messed up quite hard then. Unless of course he messed up a bit and then Cecil messed up some more while rephrasing it. Also does your version lead to any problems with overflows as they came up in the follow-up question? + Show Spoiler [my idea for Cambium's version] +Actually, my idea would be to abuse the sign bit assuming we have signed integers (marking the array index for which we already found the corresponding value), and that obviously wouldn't work if we already have negative values due to overflow... But thanks to the value 0 that would be quite the hack, involving actual bit manipulation. Also: hilariously bad cache usage in the case of a very large array. nice
|
On March 15 2013 17:04 Cambium wrote:Show nested quote +On March 15 2013 13:23 Pseudoku wrote:On March 14 2013 23:32 spinesheath wrote:On March 14 2013 19:49 fonger wrote:On March 13 2013 15:04 CecilSunkure wrote: I: So next question. You have an array of 17 integers, and each slot's value is it's indexed position. However one index is a duplicate. How do you find what the duplicate is? Me: N^2 search with a boolean. A faster way would be to add each index's value up and subtract from the expected sum. I: Okay good. What would you do if the array was very large and overflow would occur? Me: Integer overflow? I: Yes. Me: Can I use an external data structure? I: Sure. Me: I could use an external data structure to handle insertions and respond when a duplicate entry is found, such as a modified version of a hash table. Me: Another solution would be to use multiple integers to emulate a larger data range. In CS 100 we had to add two 16 bit integers with 8 bit values, and I could do the same thing here. I: We're out of time! Hey with this one can you clarify what the problem is? Is it something along the lines of: [0][1][2][3][4][5][6][7][8][3][10][11][12][13][14][15][16] Where 3 is duplicated, or are the numbers allowed to be larger than the array length? Actually I've been wondering about this too. I would imagine an array like your example. In which case a binary search doesn't seem to accomplish anything since you have no way to decide in which half the odd value is. I would imagine the interviewee is supposed to say "iterate over the array and check a[i] == i". Then the interviewer asks about the overflow, and the answer is supposed to be "check if a[0] == 0, then check whether a[i+1] - a[i] == 1 holds true". Or something like that, I haven't actually thought it through for the overflow, I just have a hunch that it would work :p Yeah, based on how he worded the question, I think a[i] = i (except for the duplicate), so just one pass is needed (O(n))? That's probably too simple. I'd imagine it's something like you have numbers 1 to n randomly distributed in an array of size (n+2). Two of which are dupes, find out what they are... Now, this would be an interesting question because the typical response would be: 1. O(n^2) runtime: two loops 2. O(n) memory: hash map 3. O(n log n): sort then traverse Then I would guess the interviwer would lead the interviewee towards an O(n) runtime solution without extra space: + Show Spoiler +think about it It's a big possibility that the interviewer screwed it up Cleaned up per below: + Show Spoiler +I think this is O(n): int findDuplicate(int * v, int n) { int next = n; int * c = v + next; while (*c != *(v + *c)) { next = *c; *c = c - v; c = v + next; } return *c; }
Example: + Show Spoiler + [5][7][9][1][6][2][0][4][8][6][3] [5][7][9][3][6][2][0][4][8][6][3] [5][1][9][3][6][2][0][4][8][6][3] [5][1][9][3][6][2][0][7][8][6][3] [5][1][9][3][4][2][0][7][8][6][3] [5][1][9][3][4][2][6][7][8][6][3] [0][1][9][3][4][2][6][7][8][6][3] [0][1][9][3][4][5][6][7][8][6][3] [0][1][2][3][4][5][6][7][8][6][3] [0][1][2][3][4][5][6][7][8][9][3] [0][1][2][3][4][5][6][7][8][9][3] --- found duplicate = 6
|
This is something you should prove rather than test. Since you basically do a[k] = k once per iteration, and terminate if you ever come across a slot where a[k] == k, it should be O(n). Whether it is correct is a different story though...
You cleverly avoided the issue of starting at a slot where a[k] == k already because the array is 1 larger than the largest value in the array, so I don't see a reason why it wouldn't be correct. It probably is correct.
Also: use the "code" BB tag.
|
I believe he said they were in randomized order.
|
Awesome. Good luck in your search for work!
|
Just as a point, I had an interview with Microsoft last week and it actually went like exactly like this O.o
|
cool read, very helpful for my future interview. And also don't feel bad about it, you can either be a small fish in a big tank, or a big fish in a small tank. Finding smaller and upcoming company will gain you lots of experience as well.
|
I don't particularly see why integer overflow matters. The difference should still be the correct answer.
|
On March 16 2013 11:04 Snipinpanda wrote: I don't particularly see why integer overflow matters. The difference should still be the correct answer.
It won't be.
For instance say our range is 7 to -7 for an integer.
[0][1][1][3][4][5][6]
We have a missing 2. To find it in decimal we do: (1 + 2 + 3 + 4 + 5 + 6) - (1 + 1 + 3 + 4 + 5 + 6), which is 2. Converting the numbers we have into binary gives:
0001 + 0001 + 0011 + 0100 + 0101 + 0110 + 0111 = 1100 which when you do 2's compliment: -0011 or -3. Our expected total also overflows, which gives us:
0001 + 0010 + 0011 + 0100 + 0101 + 0110 = 0101 which is 5. 5 minus -3 is 8, which overflows to 0.
This is assuming I did the arithmetic correctly.
|
It's 7 to -8.
You seem to be doing (1+1+3+4+5+6+7) in your first calculations. Even so your calculations aren't quite correct.
1 + 1 + 3 + 4 + 5 + 6 = 20 = 0b10100
Since you ignore the highest bit(it over flowed), it's 0100 which is one less than the total you had for your other calculation.
|
But then what if you have an array larger than max int? Possibly even max unsigned int? :p
|
On March 16 2013 16:07 spinesheath wrote: But then what if you have an array larger than max int? Possibly even max unsigned int? :p
Then you are violating the premise that the array will only have one duplicate past max int+1
|
Hi Cecil, I believe I commented on your first blog when you wrote about getting the interview and I too had an interview coming up. I am totally gutted for you as I know how much we can get our hopes up, but perhaps in the long run, it may have been a good thing you didnt get it so keep you head up and just keep applying for those dream jobs and I am sure you will get one of them. You also seem like a really nice guy, and that will go a long way in any industry.
Secondly I will go on to my interview experience. Here in the UK I had my interview with microsoft this week as well. I too am less than satisfied with the interview structure and how things went overall. I applied for a Public Relations position and in previous rounds I had to answer skills based questions on certain things like leadership, working under pressure, etc. I also had to hand in my CV alongside all of these questions I answered on the form. Firstly I was interviewed by a man whose english was poor as it was definitely not his first language, which didn't set a great tone for the rest of the interview as I did have to ask for a lot of things repeated. He, like your interviewer, was not in my field, he was just a generic HR guy who didn't seem to have any idea about the role I was applying for. Before we started, he asked me, do you have any questions. I said yes 'What does the PR role actually involve, as there is very little detail on the ins and out of the role on the website, only the basic structure of any internship' to which he said we can come back to the question at the end, kind of a dodge. Then finally before we started, he said we were having a competancy based interview and he would have me to back up answers with times in my life I had solved certain problems, of course, most times you have used in your previous answers on the application form. He then told me he did not want me to use any of these times I had already talked about and use other times I had shown these skills. To me, this is ridiculous, you have either shown the skills or you haven't and if you struggle to answer a question because you aren't allowed to use a previous experience and look stupid, its not really your fault and you end up coming up with weaker answers. This threw all prep I had out the window.
We then sort out basic formalities about checking exam results etc and then I got the same question about when I graduate. I am currently in the 3rd year of my integrated undergraduate masters degree in marine biology, this is basically a BSc and a MSc rolled into one course over 4 years, so I am still technically an undergraduate and I am in my penultimate year of my degree. He asked, 'are you on a year in industry course and do you graduate in 2015?' to which I replied, I am not but I have been allowed to look for an internship and should I find one, I will be able to defer my final year and then I shall graduate in 2015. Like you, I don't see how this is relevant. I am able to take the internship and I too am technically a sophomore within my degree programme. This really shouldn't count against me.
The next question was 'what do you know about the PR internship programme?' Now here, I was losing my mind. That was my very first question which he refused to provide any detail, I then described what little there is on the intern web page and echoed my earlier thoughts. To which he said 'ok' and moved on. Really not helping the flow of the interview or making me feel comfortable.
Generally, the actual skills based questions went ok. I wasn't really happy with not being able to use my best life experiences as I have already talked about them. None of the questions were related to PR or any PR experience, so I kind of felt short changed by the experience.
The interview concluded I asked about the PR role, where I would be placed, what I would be expected of me. He said, after the final assessment stage, I could be placed in any PR department under any of microsofts brands but he didn't really know the actual ins and outs of the internship and what would be expected, which I felt was really poor.
I haven't had a reply back from them yet, but I am certainly not confident of getting an internship.
Perhaps my shitty experience with microsoft will give you a bit of comfort, as seeing that I was not the only one made me feel a little better.
Take care cecil!
|
@GeorgeyBeats Thanks for sharing your experience! Yeah I think your interview went even worse than mine, haha. It's quite nice to hear other peoples' experiences. It must have been all the more nerve wracking for you, since I myself had about 10 other people I knew with very similar interviews to myself (since it was a 2 day interveiwathon).
On March 16 2013 14:13 Snipinpanda wrote: It's 7 to -8.
You seem to be doing (1+1+3+4+5+6+7) in your first calculations. Even so your calculations aren't quite correct.
1 + 1 + 3 + 4 + 5 + 6 = 20 = 0b10100
Since you ignore the highest bit(it over flowed), it's 0100 which is one less than the total you had for your other calculation. Ah yes, I overflowed incorrectly. I was incrementing by one during each addition instead of doing the calculation and truncating the extra bits off. Either way you can't just "ignore" bit overflow and solve the interview problem.
|
I just graduated from the U, gl to you in your future endeavors. I've been trying to get a good job with very little experience (and a very mediocre degree) with little success. I'll probably have to humble myself and start at the bottom somewhere. Keep trying, you have to remember that many, many people only succeeded because they were simply persistent.
|
On March 16 2013 18:18 CecilSunkure wrote: @GeorgeyBeats Thanks for sharing your experience! Yeah I think your interview went even worse than mine, haha. It's quite nice to hear other peoples' experiences. It must have been all the more nerve wracking for you, since I myself had about 10 other people I knew with very similar interviews to myself (since it was a 2 day interveiwathon).
Maybe my view is slightly skewed by my saltiness on behalf of it not going too great :L But even if I get through to the final stage, my views on that shall remain the same. The fact you sound like an intelligent chap and then being told that the candidates didn't have the technical knowledge is a real kick in the nuts after being interviewed by someone not in the position you are going for.
On March 16 2013 18:55 Serpico wrote: I just graduated from the U, gl to you in your future endeavors. I've been trying to get a good job with very little experience (and a very mediocre degree) with little success. I'll probably have to humble myself and start at the bottom somewhere. Keep trying, you have to remember that many, many people only succeeded because they were simply persistent.
I could offer some advice, just try and drag in any contacts that you have. The sad thing is that its not what you know sometimes, it is who you know. Just ask around, does anyone you know someone in a company or sector you would like to work in, just ask for a phone number and have a chat on the phone. Most of all be nice. Its amazing how far it will get you. Best of luck buddy.
|
OP, remember that getting a job is a job in itself.
Don't take it personally, there is a lot of competition out there.
Just keep applying, and you should eventually get your foot in the door. Once that happens, your value will raise exponentially.
|
On March 16 2013 20:25 guN-viCe wrote: OP, remember that getting a job is a job in itself.
That sentance is so true, amen.
|
And if you think getting a job is hard, wait the day you have to get an employee!
I'm looking for a programmer if you didn't get the hint from my last message...
|
|
|
|