User not logged in - login - register
Home Calendar Books School Tool Photo Gallery Message Boards Users Statistics Advertise Site Info
go to bottom | |
 Message Boards » » How to prepare interviews for software engineer? Page [1] 2 3, Next  
shoot
All American
7611 Posts
user info
edit post

Go to careercup.com and conquer all the questions there? How do you guys prepare?

3/8/2013 10:17:11 AM

ncsuapex
SpaceForRent
37776 Posts
user info
edit post

I prepare for interviews by being experienced in the field of the job I'm applying for.

3/8/2013 11:40:40 AM

shoot
All American
7611 Posts
user info
edit post

OK. You mean reviewing the courses I learnt at school?

3/8/2013 11:42:19 AM

CaelNCSU
All American
7082 Posts
user info
edit post

This girl that used to work at 10gen had a good recent post about interviewing:

http://www.kchodorow.com/blog/2010/12/09/the-technical-interview/

http://www.kchodorow.com/blog/2013/03/04/the-google-interviews/

I think she read either Cracking the Coding Interview or some such book like that before hand.

Standard for the programming portion everywhere I've worked and what I do is:
1) Question to see if you have a pulse, ie you can write a for loop.
2) Simple Recursion.
3) Harder data structures problem involving a tree, graph, trie, but still basic enough to be solved quickly.
4) OO Design question: Design a parking garage system, a drink machine etc.
5) Functional Principles - what are map, reduce, partial, apply. Compare and contrast encapsulation, polymorphism and inheritance in an OO language vs a Functional one.

Non-programming:
1) Knows command line well enough to do implement a word counter from a random site using shell commands. Knows RegEx.
2) Knows the differences between distributed (git, hg) and classic (svn, cvs) source control, and why you're fucktarded if you use the classic.
3) Database knowledge.
4) General computing knowledge about processes, scheduling, file system, http etc.
5) Beer test: Would you have a beer with them, or be afraid to?

There are the jobs where they won't ask you anything hard other than previous experience. I always assume before hand it's going to be rough and prepare accordingly, because my first technical job interview I bombed.

3/8/2013 11:58:59 AM

shoot
All American
7611 Posts
user info
edit post

Thanks for sharing.

3/8/2013 12:10:41 PM

Ernie
All American
45943 Posts
user info
edit post

DO YOU

WANT TO MEET

THE SHIFT

MANAGER

3/8/2013 12:25:44 PM

lewisje
All American
9196 Posts
user info
edit post

fizzbuzz man

fizzbuzz

3/8/2013 12:26:09 PM

CaelNCSU
All American
7082 Posts
user info
edit post

^

That's the perfect pulse question

3/8/2013 12:27:35 PM

shoot
All American
7611 Posts
user info
edit post

Fizzbuzz is not easy.

3/8/2013 12:29:38 PM

smoothcrim
Universal Magnetic!
18966 Posts
user info
edit post

goes pretty much like this

3/8/2013 1:46:04 PM

Noen
All American
31346 Posts
user info
edit post

Quote :
"2) Knows the differences between distributed (git, hg) and classic (svn, cvs) source control, and why you're fucktarded if you use the classic."


You mean the differences between distributed (multi-master) and centralized (authoritative master) source control system, and why you're fucktarded if you don't understand the inherent differences and tradeoffs between them?

3/8/2013 2:07:16 PM

CaelNCSU
All American
7082 Posts
user info
edit post

^

Requirements for version control:
Can use it offline.
Can direct QA to take Jim's, Tom's, and Dick's feature branches and run a full suite of automated tests.

Commiting offline and all the fun that entails (I want version control but internet access is fucked, i want to version my dotfiles, local sql, or local reports but I don't want a server to do it), local merges to make sure everything checks out before doing it on a remote which effects everyone else, diffs on changesets rather than files etc.

To be fair you can end up in situations with git/hg similar to svn/cvs, but it usually comes from a workflow cemented in thinking about branches as the critical section, where every developer has to acquire a lock to make a change, when in fact it can be much finer grained, down to the change set of a given file.

So yes if you don't want version control while offline, quick sanity checks on multiple code lines, fast and sane branching, then yeah then dream of the 90s is alive in Redmond.

3/8/2013 3:01:17 PM

Noen
All American
31346 Posts
user info
edit post

^You must have missed the announcement in January that TFS (and Microsoft) support Git natively in Visual Studio and TFS. TFS actively contributes to the libgit project.

http://arstechnica.com/information-technology/2013/01/microsoft-embraces-git-with-new-tfs-support-visual-studio-integration/

Even so, while YOU and YOUR team can leverage the benefits of a dvcs, that isn't the case for a huge number of development teams and organizations.

Many industries (finance, aerospace, defense, govt contractors, outsourced development) explicitly cannot carry code off-site, or work in an environment that isn't centrally audited, traceable and authenticated. There are a huge number of different reasons, some political, some regulatory, some cultural.

And actually, at least with TFS2012 you can work offline with local workspaces. It's definitely limited in functionality (and incredibly so in comparison to DVCS alternatives) you aren't dead in the water when disconnected as with most central versioning system.

3/8/2013 5:49:02 PM

lewisje
All American
9196 Posts
user info
edit post

shoot, if you don't think that FizzBuzz is easy, you have no future as a software engineer.

3/8/2013 6:59:52 PM

ComputerGuy
(IN)Sensitive
5052 Posts
user info
edit post

Looks like I'm fucked.

3/10/2013 1:25:09 AM

AstralEngine
All American
3864 Posts
user info
edit post

3/11/2013 3:59:44 PM

afripino
All American
11425 Posts
user info
edit post

1: 1
2: 2
3: fizz
4: 4
5: buzz
6: fizz
7: 7
8: 8
9: fizz
10: buzz
11: 11
12: fizz
13: 13
14: 14
15: fizzbuzz
16: 16
17: 17
18: fizz
19: 19
20: buzz
21: fizz
22: 22
23: 23
24: fizz
25: buzz
26: 26
27: fizz
28: 28
29: 29
30: fizzbuzz
31: 31
32: 32
33: fizz
34: 34
35: buzz
36: fizz
37: 37
38: 38
39: fizz
40: buzz
41: 41
42: fizz
43: 43
44: 44
45: fizzbuzz
46: 46
47: 47
48: fizz
49: 49
50: buzz
51: fizz
52: 52
53: 53
54: fizz
55: buzz
56: 56
57: fizz
58: 58
59: 59
60: fizzbuzz
61: 61
62: 62
63: fizz
64: 64
65: buzz
66: fizz
67: 67
68: 68
69: fizz
70: buzz
71: 71
72: fizz
73: 73
74: 74
75: fizzbuzz
76: 76
77: 77
78: fizz
79: 79
80: buzz
81: fizz
82: 82
83: 83
84: fizz
85: buzz
86: 86
87: fizz
88: 88
89: 89
90: fizzbuzz
91: 91
92: 92
93: fizz
94: 94
95: buzz
96: fizz
97: 97
98: 98
99: fizz
100: buzz

just copy and paste that and you'll get the job.

[Edited on March 11, 2013 at 6:07 PM. Reason : ]

3/11/2013 6:03:16 PM

BigMan157
no u
103354 Posts
user info
edit post

http://codersumo.com/

3/11/2013 6:14:46 PM

shoot
All American
7611 Posts
user info
edit post

I changed to CS area since 09. After getting this master in May, I can find a software engineer position and have a decent salary.

3/11/2013 8:45:22 PM

lewisje
All American
9196 Posts
user info
edit post

didja get any internships

do ya have any substantive open-source contributions

3/11/2013 8:46:42 PM

shoot
All American
7611 Posts
user info
edit post

Yes. I had internship b4. And I have completed several projects at school.

3/11/2013 8:49:47 PM

Perlith
All American
7620 Posts
user info
edit post

As I posted in the Study Hall thread, if you are still a student, go talk to the Career Center. There are also PLENTY of CSC resources available, talk to your advisor(s). [/thread]

3/11/2013 9:56:29 PM

jaZon
All American
27048 Posts
user info
edit post

i really don't understand how people can't do the fizzbuzz in under a minute

maybe people are overthinking the hell out of it?

[Edited on March 12, 2013 at 5:24 PM. Reason : ]

3/12/2013 5:23:29 PM

CaelNCSU
All American
7082 Posts
user info
edit post

^

I think a lot of people with programming jobs just cut and paste code from both Google and the local code base. I've seen entire products built that way at enterprise software companies. If you aren't actually sitting down and writing code I can see it.

3/13/2013 12:27:46 PM

AstralEngine
All American
3864 Posts
user info
edit post

Honestly if I'm an experienced software engineer and you're asking me basic software fundamentals questions I'ma be pretty offended.

I'm an engineer, I can write whatever you want in whatever language you want. Just give me a few days to take a look at it.

3/13/2013 12:57:00 PM

BigMan157
no u
103354 Posts
user info
edit post

Quote :
"I'm an engineer, I can write whatever you want in whatever language you want. Just give me a few days to take a look at it."

3/13/2013 1:14:27 PM

afripino
All American
11425 Posts
user info
edit post

still....shouldnt take a few days to fizzbuzz.

3/13/2013 2:30:17 PM

jbtilley
All American
12797 Posts
user info
edit post

fizzbuzz should be easy for a NCSU CSC masters graduate

Getting it to work should be easy at least; I think the whole point of the exercise is to see how convoluted/efficient the solution is. I mean somebody could come in there and make a switch statement with 100 cases and get it to work or they could write a 5 line solution.

[Edited on March 13, 2013 at 8:31 PM. Reason : -]

3/13/2013 8:23:56 PM

lewisje
All American
9196 Posts
user info
edit post

Most of the comments on the CodingHorror article about the problem consisted of solutions; here's one I thout up a while ago in C:

#include "stdio.h"
int main(){
int i;
for(i=1;i<=100;i++){
if(i%3==0){
printf("Fizz");
if(i%5==0){printf("Buzz\n");}
else{printf("\n");}
}
else{
if(i%5==0){printf("Buzz\n");}
else{printf("%i\n",i);}
}
}
return 0;
}
I imagine a subroutine could be created to reuse the check for divisibility by 5, but at this level of simplicity it would cause too much overhead; also TCC is made of win.

3/13/2013 9:01:26 PM

AstralEngine
All American
3864 Posts
user info
edit post

for($i=0;$i<=100;$i++){
$str="";
if ($i % 3) {$str.="Fizz";}
if ($i % 5) {$str.="Buzz";}
if(length $str == 0) {$str=$i;}
print "$str\n";
}

[Edited on March 13, 2013 at 10:31 PM. Reason : ]

3/13/2013 10:31:02 PM

Noen
All American
31346 Posts
user info
edit post

^Yeah, that was my immediate thought. You only need two numeric comparisons and then a null check.

if (num mod 3) out = fizz
if (num mod 5) out += buzz
if (out != null) out = num
return out

3/13/2013 10:52:52 PM

CaelNCSU
All American
7082 Posts
user info
edit post

Quote :
"Getting it to work should be easy at least; I think the whole point of the exercise is to see how convoluted/efficient the solution is. I mean somebody could come in there and make a switch statement with 100 cases and get it to work or they could write a 5 line solution."


The point is to see if the candidate can code at all. It's the, "do they have a pulse question".

http://www.codinghorror.com/blog/2007/02/fizzbuzz-the-programmers-stairway-to-heaven.html

3/14/2013 12:20:30 AM

aaronburro
Sup, B
53065 Posts
user info
edit post

^^ yeah... that doesn't work, lol

3/14/2013 7:23:27 PM

jaZon
All American
27048 Posts
user info
edit post



[Edited on March 14, 2013 at 8:25 PM. Reason : nm, last part]

3/14/2013 8:25:05 PM

jaZon
All American
27048 Posts
user info
edit post

I love reading where people post something similar to:

Quote :
"if ($i % 3) {$str.="Fizz";}
if ($i % 5) {$str.="Buzz";}"


and others respond, BUT YOU DIDN'T CHECK FOR 15

3/14/2013 8:27:36 PM

AstralEngine
All American
3864 Posts
user info
edit post

^^^that absolutely works... if you check if out == null instead of! =null

[Edited on March 14, 2013 at 9:13 PM. Reason : ]

3/14/2013 9:10:14 PM

gs7
All American
2354 Posts
user info
edit post

Convenient (today's) obligatory xkcd:

http://xkcd.com/1185/



Quote :
"Ineffective Sorts(alt-text):
StackSort connects to StackOverflow, searches for 'sort a list', and downloads and runs code snippets until the list is sorted."



[Edited on March 14, 2013 at 9:21 PM. Reason : .]

3/14/2013 9:21:15 PM

Noen
All American
31346 Posts
user info
edit post

Quote :
"^^^that absolutely works... if you check if out == null instead of! =null"


Thanks, yeah I fugged that up. I started with if(!out), but then I thought out is a string, so I can't do a boolean check reliably, and then I went stupid.

Actually null check isn't good either, Astral did it properly by checking string length.

3/14/2013 9:44:26 PM

aaronburro
Sup, B
53065 Posts
user info
edit post

string length is the better way to go, unless null + "somestring" properly yields "somestring" and not a NullPtrException or just a null... but yeah, that's roughly the route I've gone with it in the past

3/15/2013 12:35:31 AM

smoothcrim
Universal Magnetic!
18966 Posts
user info
edit post

a modulus operation is cheaper than a string length and comparison required for strlength(str)!=0. you also use less memory over the execution with the modulus method

[Edited on March 15, 2013 at 3:41 AM. Reason : but these would only matter in embedded applications]

3/15/2013 3:40:19 AM

Noen
All American
31346 Posts
user info
edit post

^but then you get back into the nesting conditionals.

3/15/2013 9:53:44 PM

smoothcrim
Universal Magnetic!
18966 Posts
user info
edit post

for (int i=1; i<101; i++){
if !(i%15) println("fizzbuzz");
else if !(i%3) println("fizz");
else if !(i%5) println("buzz");
else println i;}

no nested conditionals

3/15/2013 10:32:59 PM

Noen
All American
31346 Posts
user info
edit post

those else if's are nested.

what you wrote functionally equates to:


if() {}
else {
if() {}
else {
if() {}
else {}
}
}


Yeah, that would be faster, but its also very ambiguous.

3/15/2013 10:51:45 PM

smoothcrim
Universal Magnetic!
18966 Posts
user info
edit post

oh i see what you mean about nesting, though im not sure what about it is ambiguous

3/16/2013 12:54:33 AM

skokiaan
All American
26447 Posts
user info
edit post

When CS people miss this, the main problem is the whiteboard, not the question, I'd bet. There's pretty strong evidence that if you change the context in which people are used to doing something, that significantly affects performance.

If you asked the person to type out the code rather than write it, I'd bet the fizzbuzz answer rate would go up.




[Edited on March 17, 2013 at 12:04 PM. Reason : .]

3/17/2013 11:35:50 AM

shoot
All American
7611 Posts
user info
edit post

BTTTTT
I will have an interview with Toshiba next week for C++ developer position.

Job Description:
DEV-080513-001B

Toshiba Global Commerce Solutions is seeking a C++ Developer to provide custom solutions to SurePOS ACE clients. SurePOS ACE is Toshiba Global Commerce Solutions premiere Point of Sale (POS) application. The C++ Developer will work with clients and the Software Development team in all facets of the full C++Development life cycle: defining Point of Sale software requirements, writing and reviewing C++ design documents, providing internal test support, providing client support for C++ Point of Sale software delivery, deployment, and software maintenance. The C++ Developer will occasionally be required to travel to client locations.

Responsibilities of the C++ Developer Include:

Implementing design specifications in C++ using Object Oriented principals
Reviewing Functional Verification Test cases
Resolving Functional Verification Test defects
Providing installation support to customers
Resolving customer reported issues and defects
Creating design documents to meet defined requirements
Required Skills and Experience:
Experience as a C++ Developer
Experience using Object Oriented concepts (inheritance, overriding, overloading, etc.)
Strong problem solving skills
Preferred Skills and Experience:

Familiarity with Design Patterns
Experience as a Java Developer
Experience with SQL
Point Of Sale software development
BA/BS in computer programming or related field
Toshiba Global Commerce Solutions is a dynamic billion dollar global company based in Research Triangle Park, NC, providing retail store solutions to your favorite brands. Have you ever been in a hurry and made use of the self-checkout at Lowe’s Foods, earned fuel rewards at Kroger, or just paid for purchases at retailers such as Walmart, Michaels, Carrefour, The Gap, CVS, Boots, Cencosud, BJ’s, or Costco? These are just a few examples of our in-store solutions and impressive customer base that made us the world's installed market share leader.

The nature of retail is changing quickly, so if you share our 'Together Commerce' vision of a seamless two-way, participatory shopping experience, let’s get together to drive the new economy.

Toshiba Global Commerce Solutions is an Equal Opportunity Employer.


Job number: 337
Category: Information Technology
Date: August 05, 2013

10/2/2013 9:56:59 PM

aaronburro
Sup, B
53065 Posts
user info
edit post

What do you want us to tell you? We don't know your skills, dude. I'm going to assume that if you can't do a FizzBuzz, you will fail miserably at C++, as I assume you know nothing about it either since you routinely are asking about various acronyms in job postings. If you don't know anything about this stuff, do yourself and the interviewer a favour and don't waste his time.

10/2/2013 10:36:29 PM

shoot
All American
7611 Posts
user info
edit post

Thank you for posting from GA. Do you have a good time there?

10/2/2013 10:52:57 PM

jcgolden
Suspended
1394 Posts
user info
edit post

ask em how to turn the light bulb on if there is three switches on the wall and three lights in the room and the door is closed

gets em every time

10/3/2013 4:09:56 PM

jcgolden
Suspended
1394 Posts
user info
edit post

oh and yea. while you stupid fucks are jerking eachother off trying to knowledge, chinese egn taking you job because they know how to bring the quantity, speed and adapt. i literally seen it doen

10/3/2013 4:13:28 PM

 Message Boards » Tech Talk » How to prepare interviews for software engineer? Page [1] 2 3, Next  
go to top | |
Admin Options : move topic | lock topic

© 2024 by The Wolf Web - All Rights Reserved.
The material located at this site is not endorsed, sponsored or provided by or on behalf of North Carolina State University.
Powered by CrazyWeb v2.39 - our disclaimer.