Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Aramoro
Jun 1, 2012




pigdog posted:

Whatever your point is, it's beyond the realm of software development.

I think it's one of the most important things in professional software development. Deadlines and MVP imposed by the business is a bad thing. Developers should impose either the MVP within the deadline or the deadline to complete the MVP. That way you don't have to kill your developers over working them.

On interviews my final interview for the position I'm in just now was exactly two question. What would I do if I won the lottery and what would I do of I ran the country. It was a strange interview.

Adbot
ADBOT LOVES YOU

aBagorn
Aug 26, 2004

Ithaqua posted:

That's not necessarily bad. A lot of people interviewed you, so they presumably all get a say in the process.

As noted before, your experience is duly noted.

Verbal offer came today, and was accepted. It constitutes my first development position, fully breaking from the hell known as IT Desktop Support.

It also comes with a 94% increase in my yearly salary.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

aBagorn posted:

As noted before, your experience is duly noted.

Verbal offer came today, and was accepted. It constitutes my first development position, fully breaking from the hell known as IT Desktop Support.

It also comes with a 94% increase in my yearly salary.

Congratulations! I've been rooting for you.

aBagorn
Aug 26, 2004

Ithaqua posted:

Congratulations! I've been rooting for you.

Aww, goon love :glomp:

etcetera08
Sep 11, 2008

aBagorn posted:

As noted before, your experience is duly noted.

Verbal offer came today, and was accepted. It constitutes my first development position, fully breaking from the hell known as IT Desktop Support.

It also comes with a 94% increase in my yearly salary.

Congrats, stories like these make my future less terrifying.

Johnny Cache Hit
Oct 17, 2011

aBagorn posted:

As noted before, your experience is duly noted.

Verbal offer came today, and was accepted. It constitutes my first development position, fully breaking from the hell known as IT Desktop Support.

It also comes with a 94% increase in my yearly salary.

Should've been cheeky and asked for the extra 6% :smug:

Congratulations!

Sab669
Sep 24, 2009

Goons, where do you generally draw the line on how likely you are to stay at a place between how much you enjoy a job, and what it pays?

I've been interning at a very small shop in RI for few months now, and while I'm only an intern I've been doing everything I would be doing when I graduate. The project I'm working on right now (only one working on it) will be whats delivered to the customer when it's finished.

It's not bad work and I couldn't be happier with the environment (well, I could be- there could be female employees :(). Sandals, t-shirt and shorts every day, cool people and generally just a good atmosphere. But I'm afraid the pay is going to be substantially lower than if I looked for work elsewhere. Money isn't the most important thing to me, but frankly I'm going to be paying student loans out the rear end because I went to a lovely overpriced private school. Is enjoying a job worth not being able to really save any money? Ho hum, life decisions :(

As an intern it's $15/hr, no idea what to expect when I graduate... How kosher is it to talk about something like this with my boss? I could just play it off as saying I'll be moving out soon and am curious where I can look for places to live (this isn't a lie, I moved here for college and my lease is up this month- paying month to month now)

Sab669 fucked around with this message at 19:39 on Jul 3, 2012

shrughes
Oct 11, 2008

(call/cc call/cc)

Sab669 posted:

Goons, where do you generally draw the line on how likely you are to stay at a place between how much you enjoy a job, and what it pays?

You had better not be getting $15/hr when you graduate, certainly. Your ability to negotiate up prices for your work is a function of what other options you have.

It's perfectly possible to find a job that you enjoy that pays well too. Lots of places have sandals, t-shirt, and shorts (this isn't exceptional in any way) and a good atmosphere, that pay "market rates".

If I were you I'd be mainly concerned about getting of Providence (or wherever in Rhode Island you are) and getting to a place with a larger number of employers to choose from in the same location.

Sab669
Sep 24, 2009

shrughes posted:

You had better not be getting $15/hr when you graduate, certainly. Your ability to negotiate up prices for your work is a function of what other options you have.

It's perfectly possible to find a job that you enjoy that pays well too. Lots of places have sandals, t-shirt, and shorts (this isn't exceptional in any way) and a good atmosphere, that pay "market rates".

If I were you I'd be mainly concerned about getting of Providence (or wherever in Rhode Island you are) and getting to a place with a larger number of employers to choose from in the same location.

If I were to stay in RI, I'd want at *least* a $10 raise when I graduate, heh. And I know there's places I'd love while making great money too, it's just a matter of finding it I guess. And yea, I'm in the Providence area. Boston is only a hop away but the cost of living there I don't know if it's worth the pay difference for entry level work?

shrughes
Oct 11, 2008

(call/cc call/cc)

Sab669 posted:

If I were to stay in RI, I'd want at *least* a $10 raise when I graduate, heh. And I know there's places I'd love while making great money too, it's just a matter of finding it I guess. And yea, I'm in the Providence area. Boston is only a hop away but the cost of living there I don't know if it's worth the pay difference for entry level work?

Ahhh a $10 raise would be $25/hr which is... $50k/year???

Boston is most definitely worth the pay difference.

Johnny Cache Hit
Oct 17, 2011

Sab669 posted:

If I were to stay in RI, I'd want at *least* a $10 raise when I graduate, heh. And I know there's places I'd love while making great money too, it's just a matter of finding it I guess. And yea, I'm in the Providence area. Boston is only a hop away but the cost of living there I don't know if it's worth the pay difference for entry level work?

There's definitely nothing wrong with exploiting regional cost of living differences, but there's not a huge difference between Providence & Boston.

$50K a year makes sense for junior programmers where I live, which is cheap as hell. According to this little CPI calculator, $50K here is equivalent to around $70K in Providence.

An extra $10 an hour would leave you underpaid, either up your expectations & negotiate for more or look in Boston.

Sab669
Sep 24, 2009

I think part of my issue with pay grade expectations is that my parents combined don't even make 50k. It's honestly almost unfathomable to me to single-handedly rake in that kind of dough-- fresh out of college mind you.

Sab669 fucked around with this message at 20:44 on Jul 3, 2012

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.

Sab669 posted:

I think part of my issue with pay grade expectations is that my parents combined don't even make 50k. It's honestly almost unfathomable to me to single-handedly rake in that kind of dough-- fresh out of college mind you.
Working at one of the major tech companies as a junior engineer can easily start you around 90k. Granted that's for relatively high cost-of-living areas, but it's still a lot higher even adjusted for that than 50k in Rhode Island I bet.

Sab669
Sep 24, 2009

I suppose that's something to consider- I've never really looked at any listings out in silicone valley. I've never felt confident in my skills to land a job for a company like that.

Paolomania
Apr 26, 2006

Sab669 posted:

I've never really looked at any listings out in silicone valley.
Well, that explains it. Get out of the San Fernando Valley and head north about 350 miles.

Pweller
Jan 25, 2006

Whatever whateva.
All kinds of starting salary numbers getting thrown around in this thread. I'm not from California, what do you guys think about this San Francisco municipal proposal that claims average starting salaries for new grads hover around $67k? I think a lot of you have been repeatedly saying the area pays significantly higher.

http://www.wired.com/business/2012/07/new-silicon-valley-patent-office-faces-tech-giants-in-war-for-talent/

shrughes
Oct 11, 2008

(call/cc call/cc)

Pweller posted:

All kinds of starting salary numbers getting thrown around in this thread. I'm not from California, what do you guys think about this San Francisco municipal proposal that claims average starting salaries for new grads hover around $67k? I think a lot of you have been repeatedly saying the area pays significantly higher.

http://www.wired.com/business/2012/07/new-silicon-valley-patent-office-faces-tech-giants-in-war-for-talent/

People on this forum are probably a bit higher than average, and that article sounds like it's talking about engineers, not computer programmers specifically, which should bring the average down.

Edit: Also, people here might have used the term "good engineer" in some cases.

shrughes fucked around with this message at 00:19 on Jul 4, 2012

Safe and Secure!
Jun 14, 2008

OFFICIAL SA THREAD RUINER
SPRING 2013
Suppose that when I graduate in the coming Spring, I'll have:

-A dual degree in math and CS with a GPA around 3.77.
-Held an internship position.
-Held a research assistance position.
-Made some mostly trivial open source software contributions.
-Solid undergraduate CS theory fundamentals (data structures, algorithms, operating systems, etc.).

How am I doing compared to other senior CS students? Is this very low for new graduates who get job offers from companies like Google, Amazon, etc.?

Also, a couple of companies in my area require their new hires to work for months doing tech support for their product before they're allowed to do any actual development. One of them requires six months of this, and a friend of mine has been doing it for four months at another. They still get paid like developers, but their responsibilities are different. I thought this was just some weird thing specific to one company, but when I heard from my friend that he is also doing it, I decided to ask here.

Honestly, it seems like a bad idea. Chances are I'll be leaving my first job after a year or two, so I should improve my skills and get as much experience as possible during that time, instead of wasting six months. Am I wrong? I guess it's okay if you want work for the same company for a long time, but I'm under the impression that that is a great way to keep your salary from growing.

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.
Question for more experienced goon devs: is writing for client-side apps generally thought of as easier than writing server-side services? I recently got pulled temporarily for the second time from my permanent team that does back-end-ish stuff to help with an Android app feature, and it feels so much more straightforward to me. But, I don't know if this is personal preference, or something that holds for most programmers.

Sab669 posted:

I suppose that's something to consider- I've never really looked at any listings out in silicone valley. I've never felt confident in my skills to land a job for a company like that.
These companies hire new college grads by the thousands every year. Most have little clue. You do need to understand core CS stuff, and to know the very basics of coding style and software design, in order to pass the interviews. But they're not expecting you to already be a hotshot developer.

Pweller posted:

All kinds of starting salary numbers getting thrown around in this thread. I'm not from California, what do you guys think about this San Francisco municipal proposal that claims average starting salaries for new grads hover around $67k? I think a lot of you have been repeatedly saying the area pays significantly higher.

http://www.wired.com/business/2012/07/new-silicon-valley-patent-office-faces-tech-giants-in-war-for-talent/
The tech giants pay more (and expect more) than most other companies. Also factor in that stock compensation obviously won't be covered by the salary numbers. My offers from Amazon and MS both included stock grants that vested over ~4 years (a bit at a time, not the whole shebang at the end).

Safe and Secure! posted:

Suppose that when I graduate in the coming Spring, I'll have:

-A dual degree in math and CS with a GPA around 3.77.
-Held an internship position.
-Held a research assistance position.
-Made some mostly trivial open source software contributions.
-Solid undergraduate CS theory fundamentals (data structures, algorithms, operating systems, etc.).

How am I doing compared to other senior CS students? Is this very low for new graduates who get job offers from companies like Google, Amazon, etc.?
Sounds like you're doing great to me, although what school you're going to matters as well. The more prestigious the better for getting past resume filters, although once you're at the interview stage, nobody cares anymore.

quote:

Also, a couple of companies in my area require their new hires to work for months doing tech support for their product before they're allowed to do any actual development. One of them requires six months of this, and a friend of mine has been doing it for four months at another. They still get paid like developers, but their responsibilities are different. I thought this was just some weird thing specific to one company, but when I heard from my friend that he is also doing it, I decided to ask here.

Honestly, it seems like a bad idea. Chances are I'll be leaving my first job after a year or two, so I should improve my skills and get as much experience as possible during that time, instead of wasting six months. Am I wrong? I guess it's okay if you want work for the same company for a long time, but I'm under the impression that that is a great way to keep your salary from growing.
If you're talking regular tech support, that does sound odd, although I can see the appeal of forcing devs to understand how the program works and feels from the consumer end of things. I'd agree that it'd be better to work for a company that doesn't do this, if possible, especially if you think you'll be switching jobs every few years.

I did an internship at Goldman Sachs, and there the devs had to do a sort of tech support; I say 'sort of' because the programs they wrote were used by all of a few dozen traders, so it wasn't like what we normally think of when someone says 'tech support'.

Keep in mind though, it IS relatively common to be "on call" (pager duty) for things like live services. You can also look at that as a form of tech support, I suppose.

Aramoro
Jun 1, 2012




Cicero posted:

Question for more experienced goon devs: is writing for client-side apps generally thought of as easier than writing server-side services? I recently got pulled temporarily for the second time from my permanent team that does back-end-ish stuff to help with an Android app feature, and it feels so much more straightforward to me. But, I don't know if this is personal preference, or something that holds for most programmers.

I would say it's just different with a different set of challenges, for a server you might be thinking about scalability, for a client app it might be HCI concerns. I switch between Enterprise Java server stuff and writing DOJO and I wouldn't say one was harder than the other. My rule of thumb is, if writing the UI felt super easy it's probably because I've missed something.

I think making devs work in 2nd line support is a great thing really, I still do some 3rd line support just now. The worst thing a dev can suffer from is a disconnect from the customer and how they work. A lot of requirements you get in will seem totally unambiguous unless you know how the customer works, in which case you can punt it back to requirement. If you don't know how your customers work then you can end up writing a system which is incredibly hard to use, works flawlessly but tedious and infuriating.

Sab669
Sep 24, 2009

Cicero posted:

These companies hire new college grads by the thousands every year. Most have little clue. You do need to understand core CS stuff, and to know the very basics of coding style and software design, in order to pass the interviews. But they're not expecting you to already be a hotshot developer.

Yea, I've just always kind of imagined unless you have a 4.0 they won't even consider you. My GPA is an abysmal 2.7 or something like that because I gently caress off and don't put the effort into school outside of the classroom :(

A MIRACLE
Sep 17, 2007

All right. It's Saturday night; I have no date, a two-liter bottle of Shasta and my all-Rush mix-tape... Let's rock.

Sab669 posted:

Yea, I've just always kind of imagined unless you have a 4.0 they won't even consider you. My GPA is an abysmal 2.7 or something like that because I gently caress off and don't put the effort into school outside of the classroom :(

After your first job nobody cares what your GPA was, only the cool things you've built. Of course, you can always omit a GPA on your resume. It's not super important.

Sab669
Sep 24, 2009

Yea, fair enough. I could just stick it out here for a bit and then move on to bigger and better things. Not sure why I was thinking as soon as I graduate.

Definitely won't be putting it on my resume though, that I do know. If it's not Deans List, don't list it.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Sab669 posted:

Yea, fair enough. I could just stick it out here for a bit and then move on to bigger and better things. Not sure why I was thinking as soon as I graduate.

Definitely won't be putting it on my resume though, that I do know. If it's not Deans List, don't list it.

I graduated with a 2.8 cumulative GPA and a 3.7 or 3.8 in CS. As far as I was concerned, it showed that I knew where to focus my studying. I included my major GPA on my first resume, and no one ever asked about cumulative. After the first job, I took the GPA off.

csammis
Aug 26, 2003

Mental Institution
You should still be prepared to talk about it. If a fresh grad's resume got to me and there was no GPA at all listed (like Ithaqua says put your major GPA if you can), I'd ask about it. If it wasn't great I'd ask why it wasn't great. It's in no way a deal-killer - my cumulative GPA was 2.7! - but from what I have seen it can speak to general motivation problems in some people. You just have to have a good explanation why your motivation outside of the classroom sucked. If you've got a well-populated github that's a positive. If you bent all your time on :420: and didn't do anything else that's not so much a positive.

Speaking of which! Judging from the resumes I've been seeing lately this bears saying to the fresh graduates and new-to-the-field seekers: be prepared to talk about everything on your resume. Try to avoid listing things on your resume just because you saw it in a class once (I see this quite a bit with Haskell and assembly).

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

csammis posted:

Speaking of which! Judging from the resumes I've been seeing lately this bears saying to the fresh graduates and new-to-the-field seekers: be prepared to talk about everything on your resume. Try to avoid listing things on your resume just because you saw it in a class once (I see this quite a bit with Haskell and assembly).

I saw that all the time.
Me: Your resume says you know WCF. <asks WCF question>
Applicant: <stammers out incorrect bullshit or admits to not actually knowing anything about WCF>

it is
Aug 19, 2011

by Smythe
It seems like companies you would want to work for don't actually care about GPA's. The only company that I cared about that asked about my GPA was IBM.

Also, if they ask about your GPA, an answer I've given that's worked out really well is basically that I've seen no correlation between my grade in a course and how much I learned in a course, and the only difference between the classes I've made C's in and the classes I've made A's in is that I spent more time chasing around each individual point. And also that a only a very precious few employers ask about it once you've had an internship.

The dad of one of my friends apparently said that he should list his GPA no matter what, even though it was like a 2.6. He got no callbacks at the career fair. If they're gonna find out your GPA sucks, it's better to do that after you've had time to impress them in an interview rather than as the first line of your resume.

aBagorn
Aug 26, 2004

Ithaqua posted:

I saw that all the time.
Me: Your resume says you know WCF. <asks WCF question>
Applicant: <stammers out incorrect bullshit or admits to not actually knowing anything about WCF>

I split my "knowledge section" into a "proficient" and "familiar with" (though I do actually know 'something' about all of what I put down).

When they asked me something about jQuery (in the familiar section) I explained what I knew, and admitted that I wanted to further my knowledge with it.

But yeah I wouldn't put on there that I know anything about nHibernate, even though I know of its existence

Manic Mongoose
Aug 5, 2010
So through a relative, I was able to get an interview and subsequently an internship at a hardware company. Before the interview, I found out the intern position was looking for a mechanical engineer, however, as a programmer, I tried my best to assure them I'd try to learn my way around. They said I'd be working with MatLab (Haven't really used). Right now the day before I start, I'm feeling tremendous pressure starting. There weren't any real technical questions asked of me besides what was on my resume and as such I'm not sure what I will be getting into. I have a fear of being deadweight or completely lost. My internship is pretty short, 6 weeks, so for those whom have had internships. I have a question of will there be guidance when you start? And given that short of an internship, is that enough time to really get a grasp on a given project.

Thank you!

shrughes
Oct 11, 2008

(call/cc call/cc)

Manic Mongoose posted:

So through a relative, I was able to get an interview and subsequently an internship at a hardware company. Before the interview, I found out the intern position was looking for a mechanical engineer, however, as a programmer, I tried my best to assure them I'd try to learn my way around. They said I'd be working with MatLab (Haven't really used). Right now the day before I start, I'm feeling tremendous pressure starting. There weren't any real technical questions asked of me besides what was on my resume and as such I'm not sure what I will be getting into. I have a fear of being deadweight or completely lost. My internship is pretty short, 6 weeks, so for those whom have had internships. I have a question of will there be guidance when you start? And given that short of an internship, is that enough time to really get a grasp on a given project.

It depends on the project. Things made in Matlab are generally simpler than more computer sciencey software projects so you can probably get into them quicker, 6 weeks can be quite reasonable. It's also a better chance that they're made by people who aren't great at or interested in writing clean code, so you might be better than they are.

The question of whether there will be guidance when you start depends on the competence of the company. One of my internships was hardware-related, the owner a.k.a. my boss went to Japan for the first two weeks and I had to figure everything out on my own. But it was fine.

Ultimately if you end up being bad at your job, without being a slacker, it's their fault because they hired you, not yours.

Sab669
Sep 24, 2009

Yea don't sweat it duder, like shrughes said it's they're fault if you're not the right guy for the job, not yours.

My first internship was a nightmare, they had an idea of what they wanted to do but didn't have any IT know-how so they brought me in and wanted me to do all kinds of magic for $10/hr :v:


e; Bleh, I have a weird feeling in my stomach. I graduate in September and just today I sent my boss an email asking where I might be 2 months from now. My lease on my apartment expired and paying month-to-month is expensive as crap and when my roommate graduates she'll be leaving the state most likely (no internship, no experience, no resume... Good luck getting a job!) so yea, I sent him an email so I can start to try and actually get my life together and have some semblance of where I might be. He replied and said they're pretty happy with me and I'll have a job offer when I graduate and we can talk more about it later this week some time. Would it be inappropriate of me to bring up salary if he doesn't? I feel like I should be happy and relieved but for some reason I don't at all.

Sab669 fucked around with this message at 16:07 on Jul 9, 2012

how!!
Nov 19, 2011

by angerbot
I was given this problem as part of the interview process at facebook:

quote:

Your task is to implement a variant of the game of life. The game is played on a 2d board and consists of black and white tiles. Each game iteration, each tile is checked and its color is re-calculated based on the color of its neighbors. The rules are as follows:

For each tile, look at each tile in the 3x3 grid centered at that tile. If there are more black tiles than white tiles, make the tile black. Otherwise, make the tile white.
The tiles on the boundary of the board never change colors.
Note that all tiles are flipped simultaneously, so flipping a tile won't affect the result of checking another tile until the next iteration.

Input begins with a number specifying how many tests cases there are. Each test case begins with a number indicating how big the board is, and another number specifying how many iterations to do.

Output is simply 'Board n' where n is the board number, followed by the state of the board after the specified number of iterations. A board will never be bigger than 50x50, and you'll never be asked to do more than 50 iterations.


read input from stdin and write output to stdout.



Example input:
code:
3
3 1
www
wbw
www
4 1
wbwb
wbbw
bbwb
bbww
5 3
wbbbw
bbbbb
wwwww
wbwbw
bwbwb
Example output:

code:
Board 1
www
www
www
Board 2
wbwb
wbbw
bbbb
bbww
Board 3
wbbbw
bbbbb
wwwww
wwwww
bwbwb

I was given one hour to complete the assignment. When I first opened up the problem I said to myself, "holy hell theres no way I am going to get this done in one hour"

If you were given this problem, how would you approach the problem? In the real world, no one (at least I assume), would ever be given a problem like this with a one hour time limit. At all the jobs I've had, problems like this have at least one week or more time frame. I almost wanted to just submit to them a single function with a big elaborate docstring and no code explaining how I would attack the problem, but that obviously would not be acceptable. If you were given this problem, how would you approach it?

Ensign Expendable
Nov 11, 2008

Lager beer is proof that god loves us
Pillbug
I did a Game of Life clone with output graphics in an hour one day because I was bored, and that was in my freshman year as a learning experiment in C. I'm sure you could do it in an hour. However, I would also like to know how to handle a problem you don't have time to do.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

how!! posted:

I was given this problem as part of the interview process at facebook:


I was given one hour to complete the assignment. When I first opened up the problem I said to myself, "holy hell theres no way I am going to get this done in one hour"

If you were given this problem, how would you approach the problem? In the real world, no one (at least I assume), would ever be given a problem like this with a one hour time limit. At all the jobs I've had, problems like this have at least one week or more time frame. I almost wanted to just submit to them a single function with a big elaborate docstring and no code explaining how I would attack the problem, but that obviously would not be acceptable. If you were given this problem, how would you approach it?

It doesn't look that hard. It's just basic file parsing and logic.

FamDav
Mar 29, 2008
They even make it easier since you don't have to handle the edge cases! :rimshot:

tef
May 30, 2004

-> some l-system crap ->

quote:

If you were given this problem, how would you approach the problem?

i'd write the code. they've broken down the steps you need to do parse file, iterate, print
so i'd write some code to read stdin, into a data structure and then out again, after processing
for the iteration I would build a new copy of the board, using the rules they gave me.


quote:

I almost wanted to just submit to them a single function with a big elaborate docstring and no code explaining how I would attack the problem

You mean "copy and paste the problem description into a comment".


quote:

At all the jobs I've had, problems like this have at least one week or more time frame.

This indicates you haven't written anything more challenging than fizz buzz and hello world. Spend some time on the Facebook puzzles, as well as projecteuler.

quote:

In the real world, no one (at least I assume), would ever be given a problem like this with a one hour time limit.

No, but the hour limit is to stop them wasting their time. It isn't how long they expect you to do it in, but how long you're willing to wait. I find in the real world that people are more impatient.

how!! posted:

I was given one hour to complete the assignment. When I first opened up the problem I said to myself, "holy hell theres no way I am going to get this done in one hour"

I am making my surprised face.

Johnny Cache Hit
Oct 17, 2011
^^^ a very functional approach :downsrim: Seriously though any recommended readings regarding teaching myself to think more bottom-up? Years of procedural languages have left me approaching problems with "stub out some classes & functions" and it feels stupid to do this while trying to teach myself Scheme...

Sab669 posted:

He replied and said they're pretty happy with me and I'll have a job offer when I graduate and we can talk more about it later this week some time. Would it be inappropriate of me to bring up salary if he doesn't? I feel like I should be happy and relieved but for some reason I don't at all.

I've negotiated salary ~4 or 5 times in the last year and it still makes me nervous every time :shobon:

Don't worry about it. Ask your manager if they don't bring it up - if nothing else they should be able to give you some guidelines for what the pay looks like for that position.

Just remember that you've got more power in salary negotiations than you might think. They've paid you to learn their code, their tools, so it's far less expensive to the company to pay you more to keep you around than it would be to hire someone else.

In the meantime you should really look around for similar positions, and maybe even consider interviewing around a bit.

how!! posted:

If you were given this problem, how would you approach the problem? In the real world, no one (at least I assume), would ever be given a problem like this with a one hour time limit. At all the jobs I've had, problems like this have at least one week or more time frame. I almost wanted to just submit to them a single function with a big elaborate docstring and no code explaining how I would attack the problem, but that obviously would not be acceptable. If you were given this problem, how would you approach it?

:what: You'd spend a week on this? You might want to ask yourself why - are you having a hard time decomposing the problem, are you not confident with your own skills to get the solution... what? You said you might submit a comment about how you'd approach the problem - well, how would you approach this problem?

In general though if you bump into a problem that you think would take you over the time limits, start breaking it down & write the most important parts first.

For this test, IMO futzing around with input can be annoying so I'd personally start by hardcoding a start condition - say a 4x4 board with 2 iterations. Then I'd work out the end board on paper. Stub out the board structure & whatever bookkeeping goes with it (current iteration, total iteration count, etc.) Then work on properly iterating over your hardcoded conditions. Once that works you can make it parse stdin for one board only, then make it ask stdin for a count & load it to several boards.

Even if you run out of time with it just iterating over your hardcoded board you've still got something to show them.

One important thing I've found is that I need to resist the urge to over-design. Don't think too hard about your design decisions up front or you'll lose time, but know that you will probably be asked about them after your time is up. Early in my programming life I once tried to implement a R-tree from memory on a test and ran out of time. It sucked because all I really needed to do was stuff everything in an array, k-NN, and when I finished say "I'd optimize this by using an R-tree..."

Johnny Cache Hit fucked around with this message at 18:32 on Jul 9, 2012

tef
May 30, 2004

-> some l-system crap ->

how!! posted:

I was given this problem as part of the interview process at facebook:

:toot:

Python code:
import sys
import collections, itertools

lines = sys.stdin.readlines()
num = int(lines.pop(0))

for b in range(num):
    size, n= (int(x) for x in lines.pop(0).strip().split())
    old_b, new_b = [], []
    for _ in range(size):
        line = lines.pop(0).strip()
        old_b.append(line)
        new_b.append(list(line))
    for _ in range(n):
        for r in range(1, size-1):
            for c in range(1,size-1):
                grid = "".join(g[c-1:c+2] for g in old_b[r-1:r+2])
                counter = collections.Counter(grid)
                new_b[r][c]='b' if counter['b'] > counter['w'] else 'w'
        old_b = ["".join(row) for row in new_b]
    print "Board (%d)\n%s"%(b+1, "\n".join("".join(r) for r in new_b))
this is probably wrong :3:

edit; if I had the entire hour I might do something like this for fun

Python code:
import sys, collections, itertools
lines = sys.stdin.readlines()
for n in range(int(lines.pop(0)):
    s, i = (int(x) for x in lines.pop(0).strip().split())
    b = [lines.pop(0).strip() for _ in range(s)]
    for _ in range(i):
        b = [[('b' if sum("w b".find(x)-1 for x in itertools.chain.from_iterable(\
        g[c-1:c+2] for g in b[r-1:r+2]))>0 else 'w') if 0<r<s-1 and 0<c<s-1\
        else b[r][c] for c in range(s)] for r in range(s)]
    print "Board (%d)\n%s"%(n+1, "\n".join("".join(r) for r in b))

tef fucked around with this message at 19:01 on Jul 9, 2012

IronDoge
Nov 6, 2008

how!! posted:

I was given this problem as part of the interview process at facebook:

So uh, did you manage to give them something? Don't leave us hanging!

Adbot
ADBOT LOVES YOU

Sab669
Sep 24, 2009

Kim Jong III posted:

I've negotiated salary ~4 or 5 times in the last year and it still makes me nervous every time :shobon:

Don't worry about it. Ask your manager if they don't bring it up - if nothing else they should be able to give you some guidelines for what the pay looks like for that position.

Just remember that you've got more power in salary negotiations than you might think. They've paid you to learn their code, their tools, so it's far less expensive to the company to pay you more to keep you around than it would be to hire someone else.

In the meantime you should really look around for similar positions, and maybe even consider interviewing around a bit.

Yea, I do intend to look at all available options. When classes start back up I'll only be working 3 days a week at the job so I can interview else where those other days :)

I know a long time ago (a few months) someone posted a good article about salary negotiation in this thread, but god knows how many pages ago that was... I didn't see it in the OP either, would anyone happen to have a link handy to it (or any relevant materials)?

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply