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
ExcessBLarg!
Sep 1, 2001
I try to ask questions that are difficult enough that there's not an immediate straight-forward answer, and expect it's going to result in a ~15 minute long thought process where we discuss steps along the way. You're not supposed to know "the" answer, it's about evaluating your thought process in trying to solve a question with a not-yet-known answer, while also being able to verify basic/background knowledge along the way. The reason for this evaluation is that, if you work for us, I'm going to give you a problem with a not-yet-known answer and expect you to be able to solve it, or come up with a set of reasonable solutions, without having to be micromanaged.

If I do ask a question that someone knows an/the immediate answer to, I move on to a different question in hopes they don't know the answer. Honestly the answer is not very relevant, although it's cool you're studied and all. It's the process that really matters.

Adbot
ADBOT LOVES YOU

Dumbo
May 6, 2007

bollig posted:

Hey guys, I've recently started a Masters program in Computational Linguistics. I did a little Comp Sci in college (my degree was Linguistics), but never above the intro level. I looked at what my courseload looks like, and there's no Data Structures and Algorithms. Is this something I should be learning on my own? I have a fairly weak courseload right now, so I could do it. There's no chance of me taking it through my university, I'm in Europe and they have a hosed up system. Is this something I could conceivably learn on my own? Or some MOOC? Or picking up on my own? I could also do it online with some university or something. I reckon that this would help me out a little once I graduated. I could also be pursueded not to do this. But I figured since I was pretty strong on the Linguistics side, I should bolster the Comp Sci part.

I have a month gap in between semesters in February, and I could just do that a couple hours a day then.

There are a couple of algorithm courses on Coursera, I did the one by Tim Roughgarden and it seemed decent, although I don't know how real CS people would rate it. I think you need decent background knowledge of CS, statistics and machine learning to do computational linguistics these days, so you should study them fairly intensively (preferably with instruction, independently if necessary).

bollig
Apr 7, 2006

Never Forget.

Dumbo posted:

There are a couple of algorithm courses on Coursera, I did the one by Tim Roughgarden and it seemed decent, although I don't know how real CS people would rate it. I think you need decent background knowledge of CS, statistics and machine learning to do computational linguistics these days, so you should study them fairly intensively (preferably with instruction, independently if necessary).

Yeah this program is not all that heavy on all that math stuff. I'm going to meet with my advisor next week, to see what I can expect over the next couple years. Preferably, I'd get it all over before I start working on my thesis.

perfectfire
Jul 3, 2006

Bees!?

bollig posted:

Yeah this program is not all that heavy on all that math stuff. I'm going to meet with my advisor next week, to see what I can expect over the next couple years. Preferably, I'd get it all over before I start working on my thesis.

Definitely, absolutely, take or give yourself an algorithms and data structures course. That stuff is absolutely core to computer science and just programming in general. I swear about 1/4 of programming interview questions involve binary trees (a super common data structure) and operations on them (and less often using graph searches on them). And that's just one data structure and a handful of algorithms.

Always remember that hash tables are the coolest data structure that all other data structures look up to (and it's not just because he smokes).

Linear Zoetrope
Nov 28, 2011

A hero must cook
But really, all you need in the end is bogosort.

Edit: Serious talk. I'm a PhD student in AI/Machine Learning. I haven't dealt too much with Natural Language Processing/Computational Linguistics, but I've touched some projects here and there and there are several things you should be familiar with (in no particular order):

1. Algorithms and Data structures.
2. Statistics
3. Multivariable calculus and linear algebra

Everything else kind of falls out naturally from there. For 3 you're not really looking at the breadth of multivariable calculus so much as convex optimization. Due to this, you may want to expand the scope of 1 to linear programming, even though it's not commonly covered in basic algorithms courses, since it's a good foundation for quadratic programming (it's used in support vector machines which are frequently used in NLP). Unless you really like ~knowledge~ you can probably skip things like provably correct greedy algorithms unless it's clear you need them.

I don't mean you need to know all of this right now or you'll fail miserably, but you definitely need to be willing to look up some books, tutorials, and lectures and go over them until you feel comfortable. That said, remember that you're not alone on many of your research projects, it's very common IME for computational linguistics projects to be split between linguists and machine learning people who only know the broad strokes of the others' field. While it's helpful to know roughly how all this stuff works, depending on your program's focus it may not be integral that you can really work out novel ways of using regularization yourself or whatever.

Linear Zoetrope fucked around with this message at 02:28 on Nov 18, 2014

bollig
Apr 7, 2006

Never Forget.
Awesome. Thanks for the responses everybody!

Surprise T Rex
Apr 9, 2008

Dinosaur Gum
With all this Algorithms & Data Structures talk, I figure now's a good time to ask - Is there a book (or video series, or whatever) on the subject that comes as highly recommended as CTCI or Pragmatic Programmer?

Newf
Feb 14, 2006
I appreciate hacky sack on a much deeper level than you.

Surprise T Rex posted:

With all this Algorithms & Data Structures talk, I figure now's a good time to ask - Is there a book (or video series, or whatever) on the subject that comes as highly recommended as CTCI or Pragmatic Programmer?

Introduction to Algorithms and Algorithms are the standard Giant Reference Books.

For video, Erik Demaine's lectures are top of the heap. There are videos from a few different 'Introduction to Algorithms' sections on this page. I'm sure they're all great.

Newf fucked around with this message at 13:41 on Nov 18, 2014

YanniRotten
Apr 3, 2010

We're so pretty,
oh so pretty

Che Delilas posted:

I'd say you're probably worried for nothing; what you did is called programming. You described literally every single day at a programming job, except you were interviewing which is an order of magnitude more stressful and you still came up with a working solution. Some companies do look for unicorns, but I'd go so far as to say they usually have real trouble finding what they think they want for what they are willing to pay for it.

Just, don't pin all your hopes on this one company. There are a million reasons why they might reject you, most of them utterly out of your control, so do your level best to not second-guess yourself. Our kind tends to over-analyze and dwell on hypotheticals, so the best thing you can do right now is just keep plugging away at the job search, and if this one company wants to hire you, great!

Yep, worried about nothing. I'm still moving through the process with that company. Pretty confident that I will move on to the offer stage with at least one of the companies I'm working with, and both of them are in the category of being able to at least double my base pay and provide much better benefits, so I feel pretty good about things.

P.S. Austin job market appears to be REALLY good right now. It sucked so bad the last time I was looking two years ago, but that may have had something to do with having the wrong degree and no experience. Anyway, if you're working in the area and making under $85K, and aren't terrible, you should probably do a market check.

The March Hare
Oct 15, 2006

Je rêve d'un
Wayne's World 3
Buglord
On algo chat, this is currently front-page on HN and should be good given the names behind it: https://www.khanacademy.org/computing/computer-science/algorithms

bollig
Apr 7, 2006

Never Forget.

The March Hare posted:

On algo chat, this is currently front-page on HN and should be good given the names behind it: https://www.khanacademy.org/computing/computer-science/algorithms

Just saw this. I mean, should I do this? Or should I get an actual class credit for it, so I can put it on a transcript.

NovemberMike
Dec 28, 2008

bollig posted:

Just saw this. I mean, should I do this? Or should I get an actual class credit for it, so I can put it on a transcript.

Nobody gives a poo poo about your transcript. I wouldn't factor that in to your decision.

Jo
Jan 24, 2005

:allears:
Soiled Meat
What's the difference in responsibility level for a senior/lead engineer versus a junior position? Are these purely semantic differences with possible pay-rate discrepancies? I've got a decent amount of experience, but I'm worried about accepting a senior level position because I'm not confident enough in my abilities to solve the issues that need solving.

Tunga
May 7, 2004

Grimey Drawer
"Lead" should mean you are in charge of some kind of team and tends to have a specific meaning since there will only lead on a team. Other classifications like "Junior" and "Senior" are somewhat vague and generally just represent how much you get paid compared to other people at that company. I have one year of Android experience and people keep putting me forward for "senior" roles that aren't really senior in any logical sense of the word.

Hiowf
Jun 28, 2013

We don't do .DOC in my cave.
A senior engineer is someone who has already seen the bad code he writes blow up in his face once.

The difference varies from company to company, but generally speaking "senior" implies you have enough experience to make prioritization and technological decisions on your own, when needed.

Jo
Jan 24, 2005

:allears:
Soiled Meat
Thanks, you two. I guess I'll shy away from lead roles in favor of more senior ones.

YanniRotten
Apr 3, 2010

We're so pretty,
oh so pretty
If your team relies on you to solve problems more than you rely on them, you're senior. If stuff gets kicked over to you because nobody else can figure it out, you're senior. If you often bail on stuff before you finish it and hand it off to someone else, you're not.

Although by this metric I'm senior when my title is mid-level, and a senior on my team is decidedly not senior.

return0
Apr 11, 2007

YanniRotten posted:

If you often bail on stuff before you finish it and hand it off to someone else, you're not.

Uh this is classic senior, do the hard bit and let the scrubs mop up.

Hughlander
May 11, 2005

To me junior vs Senior is the amount of hand holding I need to do. A proper Senior can be told "The Product Manager asked for X" and can go hunt down the actual requirements come up with a design that fits in our existing architecture, write appropriate tests, hand it off to QA and shepherd it through devops out to production.

A junior would need to be told what to write and why, while a mid level to me may need good requirements and an architecture review.

Basically for me it's how much of my job do they do for me.

Tezzeract
Dec 25, 2007

Think I took a wrong turn...

Jsor posted:

But really, all you need in the end is bogosort.

Edit: Serious talk. I'm a PhD student in AI/Machine Learning. I haven't dealt too much with Natural Language Processing/Computational Linguistics, but I've touched some projects here and there and there are several things you should be familiar with (in no particular order):

1. Algorithms and Data structures.
2. Statistics
3. Multivariable calculus and linear algebra

Everything else kind of falls out naturally from there. For 3 you're not really looking at the breadth of multivariable calculus so much as convex optimization. Due to this, you may want to expand the scope of 1 to linear programming, even though it's not commonly covered in basic algorithms courses, since it's a good foundation for quadratic programming (it's used in support vector machines which are frequently used in NLP). Unless you really like ~knowledge~ you can probably skip things like provably correct greedy algorithms unless it's clear you need them.

I don't mean you need to know all of this right now or you'll fail miserably, but you definitely need to be willing to look up some books, tutorials, and lectures and go over them until you feel comfortable. That said, remember that you're not alone on many of your research projects, it's very common IME for computational linguistics projects to be split between linguists and machine learning people who only know the broad strokes of the others' field. While it's helpful to know roughly how all this stuff works, depending on your program's focus it may not be integral that you can really work out novel ways of using regularization yourself or whatever.

Sup ML buddy. Convex optimization is kinda 'the hard stuff' used to theoretically justify the SVM stuff, specifically the constraint transformations. That's not to say that its not useful, but cranking through the gold standard book might be overkill (its super useful for PHD grad level though since they use it in stats/OR/economics and a bunch of other fields.)

I have a feeling for Computational Linguistics going through an NLP course would be a good first step. I think parse trees and Naive Bayes (so data structures and conditional probability) might be more immediately relevant. The knowledge of context free and other kinds of Chomsky grammars might be useful too.

Infomaniac
Jul 3, 2007
Support Cartographers Without Borders
Made it through a nontechnical preliminary interview without saying anything too dumb... Our time is up. Tme to say goodbye.
Me: "Thank you for meeting you." Showing off those amazing communication skillllzzzzz.

Dougie McdDouger
Nov 19, 2014

I do like muffins , but I tango all night long.
After a gap year, I'm heading towards a Software Eng. BSc over in the UK next September, with possibly a MEng in Computer Science the year afterwards. After that I want to head over to the US (i'm from the UK) to go work in the Software Industry there.

So i've found out from elsewhere on these forums that Certs aren't a big thing over in the US. So thats fine.

Any tips for getting over the pond to you Yankies? Any programs for UK Students coming over? I should be able to do a year of my study at the University of Illinois so that should be helpful in one way or another.

Che Delilas
Nov 23, 2009
FREE TIBET WEED

Dougie McdDouger posted:

Any tips for getting over the pond to you Yankies?

An airplane is probably your best bet.

DimpledChad
May 14, 2002
Rigging elections since '87.
Don't you mean an aeroplane?

Doghouse
Oct 22, 2004

I was playing Harvest Moon 64 with this kid who lived on my street and my cows were not doing well and I got so raged up and frustrated that my eyes welled up with tears and my friend was like are you crying dude. Are you crying because of the cows. I didn't understand the feeding mechanic.

Dougie McdDouger posted:

After a gap year, I'm heading towards a Software Eng. BSc over in the UK next September, with possibly a MEng in Computer Science the year afterwards. After that I want to head over to the US (i'm from the UK) to go work in the Software Industry there.

So i've found out from elsewhere on these forums that Certs aren't a big thing over in the US. So thats fine.

Any tips for getting over the pond to you Yankies? Any programs for UK Students coming over? I should be able to do a year of my study at the University of Illinois so that should be helpful in one way or another.

Eh, do you need the master's? Might be worth considering just working after the bachelor's, assuming it's similar to an American bachelor's. In my small amount of experience it seems like you just learn a ton on the job. And they pay you, not the other way around!

Hughlander
May 11, 2005

DimpledChad posted:

Don't you mean an aeroplane?

We don't have time for useless syllables. Thats why the base pay is so much more.

Che Delilas
Nov 23, 2009
FREE TIBET WEED

DimpledChad posted:

Don't you mean an aeroplane?

He didn't spell yankee our way, so I didn't spell airplane his.

Dougie McdDouger
Nov 19, 2014

I do like muffins , but I tango all night long.

Doghouse posted:

Eh, do you need the master's? Might be worth considering just working after the bachelor's, assuming it's similar to an American bachelor's. In my small amount of experience it seems like you just learn a ton on the job. And they pay you, not the other way around!

Yeah that might happen. Ill be in Illinois for the 2nd year of study. So a final 3rd year and then the BSc is finished. My best bet on finding a job to help with the sponsorship required to move over there from Britain would be during that year.

The masters would honestly be a means to an end for helping to find work. If it's not helpful in the US then I'm not going to burn notes in the pit that is University.

Are there any particular parts of the US that are quite high on Tech jobs? Other than San Fransisco of course.

Finally, any tips on looking for work as a Foreign student? Or just roll along with the standard Student Jobs Fair rubbish...

Thanks

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.
After SF, the next highest tech hub by absolute number of jobs is probably NYC, and the next highest by density is probably Seattle. Also look at Austin, Boston, LA, Chicago, maybe DC (I say maybe because it might be harder for a foreigner to get government contract jobs? if there's a required clearance anyway).

Dougie McdDouger
Nov 19, 2014

I do like muffins , but I tango all night long.

Cicero posted:

After SF, the next highest tech hub by absolute number of jobs is probably NYC, and the next highest by density is probably Seattle. Also look at Austin, Boston, LA, Chicago, maybe DC (I say maybe because it might be harder for a foreigner to get government contract jobs? if there's a required clearance anyway).

Showing how little I know of America now. Is NYC as hard to live in as the stories outside the US say? I thought it was crazy expensive to live there. Even more than SF?

NYC is pretty nice though. I'll look into it.

DimpledChad
May 14, 2002
Rigging elections since '87.
NYC SW engineer here. It is expensive to live here, but much like in SF the median salary is also much higher than in the rest of the country. Up until a year or two ago New York was more expensive but San Francisco has just surpassed us in cost of living. Either way, it's definitely possible to live comfortably in New York on an entry level engineer's salary. It won't be luxurious, but you'll be fine. The stories about it being hard to live in New York are mostly about struggling actors and musicians. I was one of those before I switched careers to development and I'll tell you, it's a completely different experience.

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Dougie McdDouger posted:

Showing how little I know of America now. Is NYC as hard to live in as the stories outside the US say? I thought it was crazy expensive to live there. Even more than SF?

NYC is pretty nice though. I'll look into it.

NYC is expensive, but you can also live across the river in New Jersey and still have a reasonable commute. I live in a fairly "rural" area of New Jersey (northwestern corner, closer to PA and NY state than NYC) and I can be in midtown Manhattan with a 2 hour train ride. If I lived 15-20 miles closer, it would be an hour or less -- I'm about 45 miles directly west of NYC. If you live in Hoboken (almost as expensive as NYC), Newark (don't live in Newark), or Jersey City, the PATH train takes you right in. PATH is basically an extended subway line from NJ to NYC.

Of course, if you live in NJ and work in NYC, you'll get taxed to death since you have to pay NJ and NY state taxes. But I ran the numbers last year, even with the extra taxes I pay, I save money, and I get to have a nice, quiet house instead of a shoebox apartment.

The March Hare
Oct 15, 2006

Je rêve d'un
Wayne's World 3
Buglord

Dougie McdDouger posted:

Showing how little I know of America now. Is NYC as hard to live in as the stories outside the US say? I thought it was crazy expensive to live there. Even more than SF?

NYC is pretty nice though. I'll look into it.

I live in NYC and make well below median dev salary (bc I am not a dev!) and I've been here for two years. If you don't mind a 40 minute commute you can pretty easily live a lil' bit far out in Brooklyn and get more space for about the same rent as Manhattan. Don't be afraid of NY basically, millions of people manage to live here making far less than a developer would.

Blotto Skorzany
Nov 7, 2008

He's a PSoC, loose and runnin'
came the whisper from each lip
And he's here to do some business with
the bad ADC on his chip
bad ADC on his chiiiiip

Ithaqua posted:

Of course, if you live in NJ and work in NYC, you'll get taxed to death since you have to pay NJ and NY state taxes.

How does this work out for you? Normally when you live in one state and work in another you wind up paying a state income tax that is essentially the higher of the two states involved rather than their sum, due to the credit on one state tax return for taxes paid to the other state, right?

New Yorp New Yorp
Jul 18, 2003

Only in Kenya.
Pillbug

Blotto Skorzany posted:

How does this work out for you? Normally when you live in one state and work in another you wind up paying a state income tax that is essentially the higher of the two states involved rather than their sum, due to the credit on one state tax return for taxes paid to the other state, right?

I honestly couldn't tell you, I'm far from an expert on the subject. My employer deducts NY state tax, so I usually have to back-pay the NJ taxes. There's probably a smarter way to approach the entire thing, but it works out to a few hundred dollars a year extra so I don't sweat it.

scissorman
Feb 7, 2011
Ramrod XTreme
I'm finally done with my diploma/master and I'd appreciate it if you could help with some advice.
I studied in Karlsruhe, Germany, so I'm mostly looking in the vicinity but I'd like to apply at Google in Munich.
Due to chronic illness I took a long time to finish and my GPA is on the 2.3-2.5 range (which I guess is equivalent to 3.something in the American system) but I've also spent a long time working as a research assistant for Ubiquitous Computing and some time at a small firm doing all sorts of stuff, so I've got a couple years of experience working on small projects with a variety of technologies.
In my studies I mostly concentrated on theory-heavy subjects like program verification and formal modeling, so I believe that getting a job at Google or another big company is probably my best chance at working with similar-minded people.

As preparation I'm looking at interview questions and reviewing my algorithms textbook and Big-O since that's also been a while.
I'm also looking at Code/Game jams to help me get more coding experience.

So I'd like to ask if there is anything else I can do to improve my chances?
Also, are there any opportunities in Germany you can recommend e.g. I saw that IBM has an office in Boeblingen and is looking for software developers.
And finally, how should I deal with my illness? It's obviously going to come up in any interview, so what is the best way to discuss this?

aBagorn
Aug 26, 2004

Ithaqua posted:

NYC is expensive, but you can also live across the river in New Jersey and still have a reasonable commute.

This. It's a 1.5 hour train ride from Philly to NYC so you can even include Philly and suburbs in the mix depending on how much you want to commute

Dougie McdDouger
Nov 19, 2014

I do like muffins , but I tango all night long.

Ithaqua posted:

...have a nice, quiet house instead of a shoebox apartment.

Thanks for the information. I honestly don't mind small apartments if my commute to work was shortened significantly. At least I don't mind them as a Student. A house at this point would feel too large and empty.

Do you mind if I send you a PM if I have any more questions, you have been very helpful so far.

Dougie McdDouger
Nov 19, 2014

I do like muffins , but I tango all night long.

aBagorn posted:

This. It's a 1.5 hour train ride from Philly to NYC so you can even include Philly and suburbs in the mix depending on how much you want to commute

What are the fare prices like? I used to intern at a small software team in the UK when I was younger and ended up leaving as the commute was beginning to pile up on costs.

Adbot
ADBOT LOVES YOU

DimpledChad
May 14, 2002
Rigging elections since '87.
I live and work right in Manhattan, making an entry level salary at a tech company. My commute is 20 minutes. I live in an apartment with several roommates ("flatmates?"), and don't have a huge amount of space, and pay more in rent than I would in New Jersey. But on the flip side, I don't have to live in New Jersey. I'm totally comfortable with my quality of life. And I could have a nicer apartment for significantly less, still in the city, if I moved to Brooklyn or Queens or Washington Heights. aBagorn, you straight trippin' if you're suggesting he live all the way in Philly and commute to the city. It's really more like 2 hours and he'll spend like $20 and 4 hours a day commuting. Just live in the city, at least at first. It's a worthwhile experience.

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