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
Johnny Cache Hit
Oct 17, 2011

A MIRACLE posted:

Yeah, I'm not really seeing how he "dodged a bullet." aBagorn, practical knowledge of best practices wrt OO design will only come with experience. That is, building actual products used in the real world by actual users, dealing with requirement changes, testing environments etc.

If the company equates "knowledge of OO practices" with "knowing some tricks created to hack around missing language features", then yeah, aBagorn most certainly dodged a bullet.

Adbot
ADBOT LOVES YOU

Johnny Cache Hit
Oct 17, 2011
^^^ drat it tef is there anything you don't beat me at?

Safe and Secure! posted:

Can you give me some examples of design patterns that are used to hack around missing language features? I've never heard that before and it sounds kind of neat.

Pretty much all of them. Norvig found that of the 23 GoF patterns, 16 of them were trivial or even invisible in Lisp.

The PPR talks about this a bit more too and (might) be even more readable than slides from 1996 v:shobon:v

Johnny Cache Hit
Oct 17, 2011

baquerd posted:

Just because someone doesn't want to spend a ton of spare time creating meaningful programs and putting them on github doesn't make them a bad programmer. I find it hard to believe that most people really have the mental energy to put in 8 serious hours of programming a day and then do more when they get home, there's such a thing as downtime afterall.

I treat contributions to projects as a sufficient but not necessary indicator of programmer quality. The absolute best programmer I've ever worked with doesn't have a github account, doesn't contribute to any open source projects, and tells me he never programs after 5:00 because he'd rather be in his garden :shobon:

But as this is the newbie programming thread, the people who ask questions here don't have the years and years of experience he does. For them, I think Markov Chain Chomp is spot on - github dramatically lowers the barrier to writing meaningful code, which is IMO the best way to become a better programmer.

Johnny Cache Hit
Oct 17, 2011

shrughes posted:

70k is what I got in Boston for my first job out of college, in 2008, working 30-40 hours a week. Non-sucky interns interning in the SF bay area in 2012 make more than that.

As a comparison - I live in an area with a low cost of living and developers straight out of college make around $45K. $70K is closer to the median for what senior developers pull in.

But I also pay something like 92% less for housing so I guess I won't knock it v:shobon:v


Aramoro posted:

The general rule is, the more interesting the job the lower the salary.

It's true :smith:

Johnny Cache Hit
Oct 17, 2011

Shovelshark posted:

Am I too young to consider contracting, and is it as great a deal as it sounds (set your own schedule, etc)? I've heard of working for a staffing company and striking out on your own after a few years, but those sorts of companies don't seem very well regarded around here.

I might break from orthodoxy a bit here. I actually started at my current job on a contract to hire. The company I'm working for now didn't even publicly list the position - they had a recruiting firm that consistently brought them good Ruby developers, and decided it was much cheaper to keep paying them to find candidates than to deal with it themselves. I worked with a wonderful recruiter who cared about both me & the company, and couldn't have been happier with the experience.

That being said, everything I've heard says there are plenty of bad staffing companies out there whose only interest is pushing you into a position as fast as possible to get the commission.

But contracting is an option even at this point in your career. You'll almost certainly be doing W2 contracting, where you are technically an employee of the contracting agency, rather than 1099 contracting where you are a true independent contractor. That can be good, though, as there are less tax concerns to think about. Ask your former coworkers if anyone knows good recruiters, or any bad ones to avoid :shobon:

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!

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.

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

Johnny Cache Hit
Oct 17, 2011

how!! posted:

Time boxing is relative. Whats better, writing code in one hour that takes one hour (or more) for anyone else to understand, or spending 8 hours writing code that takes anyone else 2 minutes to understand?

Look I get that you're hellbent on doubling down on your beliefs but at some point you need to realize that if you are willing to spend "multiple 8 hour days" on a two-rule game of life you aren't going to get hired because people are going to think you are a slow, terrible programmer. This is how the world works.

And yeah, the world is full of lovely, crappy code. But I dare say most people, if forced to pick, would pick a programmer that spends one day writing ugly code that solves seven or eight requirements over a programmer that spends a day writing beautiful code that solves one. I would, because I know projects can fail because the code is unmaintainable, but more often they fail because they never made it to maintenance... they went over time & budget and management puts a bullet in their head. So do your projects a favor - code.

Johnny Cache Hit
Oct 17, 2011

how!! posted:

For that reason, I always feel like it's unfair when I'm given a programming challenge where I'm forced to turn in code that I'm not able to polish up the way I like. For the same reason, I hate it when my co-workers check in code thats not polished up either. Reddit did it right because they let me take as much time as I wanted.

Unfortunately them's the breaks. Timed programming challenges aren't designed to get you to write gorgeous code. If you do write gorgeous and effective code in an hour, hey, you're not going to have trouble finding jobs. But most programmers will sweat a little bit, and they want to see you not crumble under pressure. And "I'm going to submit a giant function that says 'I'm going to approach the problem by'" is definitely crumbling.

Maybe you can practice polishing faster?

how!! posted:

By the way, does anyone have a job where they're tasked with solving problems with only one hour to do it in? Since I started programming about 5 years ago, I've never had such a short amount of time to get something done. Most deadlines I deal with are on the scale of days, not minutes. Does it make me a bad programmer if I get anxious when told I need to write something complex and I only have an extremely short amount of time to complete it?

:psyduck: GoL isn't complex, and that problem isn't even a full GoL.

OK, here's an example. Like most programmers I'm lucky if I'm pulled away to do bug fixes every other day rather than every ten minutes. The expectation is that I'll git stash, debug a little, and come up with a fix in a matter of hours, not days. And if the bug is bad enough to make us lose money, you'd better believe the expectation is to fix it way faster than an hour.

Now, here's something for you to consider: it took you three days to solve that reddit gifts problem that you said you could've done in an hour. That's two days and twenty three hours of the hiring people looking at resumes, reviewing github contributions, and setting up interviews. Two days and twenty three hours before they even know you exist.

Speed is everything. Run or die.


Fal-Cone posted:

Everyone else that graduated with me is either making double my expected annual income, or is still bopping around doing summer stuff. It's day five for me, here, and I'm not really digging this huge cubicle farm and the whole "worth-half-as-much-as-my-classmates thing"

How many of your classmates graduated with co-op/internship/research experience? You aren't competing with them for jobs, as they've already got you beat - you're competing with current students looking for a summer internship.

Keep looking for a job, but definitely don't put the internship on your resume until you make it for at least three months or so. It doesn't look good to take a job & look for a new one five days later.

If you can't find anything, finish the internship. You'll probably get a job offer and a nice raise. Take it, and keep sending out resumes.

But when in doubt just keep looking for jobs.

Johnny Cache Hit
Oct 17, 2011

Fal-Cone posted:

Yeah, that's pretty much the plan for the time being. I'm pretty sure I can negotiate some kind of delayed start date to have time to finish stuff up at my internship.

A good portion of people that have jobs from my class now were roughly in the same boat as me, but I guess it's just a matter of persistence. Waking up to 1~3 "no, sorry" e-mails is awesome encouragement, you see.

:( :hf: :( you'll get there

It might be tough to hear, but with no experience you're relying solely on your education, and if you graduated with a 2.98 from a non-big-name university you don't have too much to hang your hat on. hieronymus is totally right - while you're grinding for a job write something cool and post it up to github. That's a really good way to show off your skills. Showing off patches I sent to Mozilla was how I landed my first part-time job while attending a non-big-name university and not getting super great grades.

And be sure you round that 2.98 up to a 3.0 :unsmith:

Johnny Cache Hit
Oct 17, 2011

Sab669 posted:

Welp, just had that meeting with my boss I mentioned yesterday about going full time when I graduate


:suicide:

This is why we all said to apply everywhere :unsmith:

What went down?

Johnny Cache Hit
Oct 17, 2011

Sab669 posted:

$35k/yr.

:wtc:

Find somewhere else. Don't even try to negotiate another offer with them, because you'll end up working on a team with programmers that are worth $35K a year.

If you haven't already, start looking in Boston.

Johnny Cache Hit
Oct 17, 2011

Sab669 posted:

No, I know-- that was something I had posted about a few pages back, because it's tough to draw the line.

Its just that my roommate works call center and makes that much with better benefits. I do like the company, but I don't want to take a decade to repay student loans and I need a new car soon... Oh life :smith:

What does the turnover look like at this company? Do they have lots of interns that stay for a little & never come back? This might be their strategy...

But if it's a relatively stable place you could consider going to your manager with a counter offer. Again, the companies goal is (typically) to keep programmers that they have hired & trained. It's often less expensive in the long term to pay you the extra $10K than to hire a brand new person and let them get familiar with the code base. If you want $45K, tell them - you might not hit that number but maybe they can give you some guaranteed bonuses, extra vacation time, etc. - it's all about what you negotiate.

But interview elsewhere too.

Johnny Cache Hit
Oct 17, 2011

Rello posted:

On the topic of resumes, when applying for internships (Second year student), I know that putting course projects on your resume is frowned upon, but how does everyone feel about putting projects from courses which aren't required/upper-level? (i.e Compilers/Compiler Optimization/Machine Learning/Computer Graphics)

Also, should I be listing courses that I've taken relevant to the job posting?

You're a second year student. List everything you possibly can. You're not going to be dinged for having it, and your resume suddenly looks less exciting when half the class lists their course projects.

Johnny Cache Hit
Oct 17, 2011

dmccaff posted:

After interviewing and getting my first job offer from a company, I'm in two minds as to whether or not I want to accept the offer. The interview process made the company seem incredibly corporate (no outside projects, 100% focused on the job, expected to work late etc.). On top of that, it's in an area that seems quite boring to me personally (Enterprise Resource Planning), using a development language I'm not keen on (VB.net). If I gave it a go anyway, would I be hurting my job chances in the future for roles in different areas and languages? I can't help but feel that I wouldn't be happy there :saddowns:

Working on a certain language or area won't necessarily pigeonhole you in the future. That being said, you shouldn't take a job that you won't enjoy. I've done it and have ended up burning out really fast.

Go with your gut - keep looking.

Johnny Cache Hit
Oct 17, 2011

Funambulist posted:

Yeah, personal project's what I thought I'd need most. Does the nature of the project matter all that much or is it more about having evidence you can make a working decent-sized program (ideally with better coding style than a stoned monkey)?

At this point you need to show people some evidence that you can program.

Optimally you'd write something decent sized, interesting, and in your field.... but for now any code is better than no code.

Johnny Cache Hit
Oct 17, 2011
I've never tried any freelancing sites myself, but the overwhelming message I've heard is "don't bother" - most of the people looking to hire programmers there are interested in competing on price, and you won't win that war.

Have you considered looking for freelancing opportunities in your area? If you do webdev, get a portfolio made up and get appointments at local digital design firms. It doesn't just work for the designers :shobon:

Alternatively you can also contact local contracting/placement firms for part-time contracts, or just reach out to your contacts (you do have contacts, right? ;)) for overflow work. A friend of mine started a nice career 1099ing by convincing some local companies to send some overflow his way - they normally didn't deal with contractors but he set his price right & they needed the extra help.

Johnny Cache Hit
Oct 17, 2011

Strong Sauce posted:

In the end all companies want are skills, not pedigree. Having a 3.85 GPA at MIT is just a signal that you are probably pretty good at CS. It's probably true you'll be at a disadvantage if you're not say,at a top 10 school but a lot of that can be overcome by showing you can complete projects. There is definitely some amount of elitism happening at companies though.

I think the most important factor is where you plan to apply. Most people who graduate from MIT/CMU/Stanford/... are applying to top-tier companies. If you graduate from a middle-tier state school you probably will have trouble standing out & getting a spot at a Google or a Facebook. But hey I went to a middle-tier state school and one of our grads ended up with a job at Google so v:shobon:v

And yeah after your first job your education becomes less and less important. My first resume was nothing but school stuff, but after five or six years I've got education as one line in the very back and it hasn't come up in the last few interviews.

Johnny Cache Hit
Oct 17, 2011

chunkey posted:

Hey guys, I'm a CS student and fairly capable programmer (I've been programming way longer than I've been in college and I have a lot of side projects + 1 internship under my belt). I'm thinking of trying to get some contract work (and learn a technology that would be conducive to it); something like mobile or web development. But I'm at a loss as to what to learn and how to turn it into paying work. It definitely seems like mobile is probably the most lucrative at the moment. I'm debating ordering an android device and messing around with it. If anyone has any advice on how to go about this (and what to learn) I'd appreciate it.

I've never done Android development, but when I started trying to learn iOS stuff it meant a significant investment of time to learn Xcode and ObjC, and it can be very expensive to buy a MacBook/iPhone. Plus it's not like you'll use ObjC outside of iOS development.

Web development makes you learn basic server administration, a nice language like Ruby or Python, database design and use, and some amount of graphical design. You might already have some of those skills, which means less initial investment. And if you don't, they are very worthwhile to learn because they are incredibly useful outside the web development world.

Learning either is a fine decision, though, and mobile might be more lucrative in the long term. How much time do you have left in school?

If you want to turn this into a contracting career, build some mobile/web apps on your own and use them as a portfolio you can take around to digital agencies. You're way too inexperienced to land your own contracts right now, but you could learn a lot subbing for someone else.

Johnny Cache Hit
Oct 17, 2011

seiken posted:

In my opinion you should learn LaTeX (if you're a programmer it's trivially easy) and write your CV using that because everything else looks completely amateur in comparison. (Maybe there are some places that only accept MS Word CVs but surely no tech places these days? I don't know.)

Edit: just in case it helps anyone, here is my CV basically turned into template form and here is what it looks like rendered. (And this is the resume document class file I'm using that I found somewhere.)

I'm a huge fan of what moderncv makes - you can see some examples on CTAN. I tweaked the casual theme a bit to get mine.

Trying to get nice alignment from most word processors was pissing me off.

Johnny Cache Hit
Oct 17, 2011

Mniot posted:

This is definitely the case. I actually had an interviewer say, "your starting salary's going to be a little lower, because I don't want to pay the recruiter" :allears: . And, all else equal, companies will hire someone who doesn't come from a recruiter at all.

The last time I was job-hunting, I was working inside of a secure area and it was a pain to duck out for a few minutes of job-hunting. Working with recruiters was amazingly convenient for me because they did all the time-consuming leg-work and only bothered me when my resume actually got a bite. They're also nice if you're looking to move or otherwise don't know where to apply (I applied to Google by myself, but a recruiter got me an interview with TripAdvisor, who were pretty cool).

I found my current job via a recruiter -- the company didn't publicly list the position, just relied on recruiting agencies. It was a 3 month contract to hire, and as soon as I was hired full time I ended up with around an 8% bump... I'm going to guess the recruiter got around an 8% commission :q:

Johnny Cache Hit
Oct 17, 2011

hieronymus posted:

A company is paying a contracting company $50 an hour for a co-worker and he is only seeing $30/hr of that.

That's exactly why I wanted to 1099 and avoid contracting agencies. What the hell is that company doing that deserves a 66% commission?

Johnny Cache Hit
Oct 17, 2011

hieronymus posted:

The company is paying for the ability to fire without it being a pain in the rear end.

You are actually better off though if you are an independent contractor - independent contractor means serious money as you can get paid for overtime doing software development.

Ah, yeah - I keep forgetting that I work in a state that can be actively hostile towards worker's rights :v:

As for independent contracting, I've got some friends that are doing it, loving it, and making crazy money. I just wouldn't know where to begin with the whole "find clients, build relationships" -- the business side. Any tips?

Johnny Cache Hit
Oct 17, 2011
^^^ most of the MS CS people I know came to the US on an F-1 visa to get it. Small sample for sure, but I still thought it was interesting.

Doghouse posted:

Wow, I'm very surprised that all of the advice given here was to skip grad school and try to teach myself everything. I am highly skeptical - did the people giving the advice also get into the industry without CS degrees? I also "know that one guy that did it without a CS degree," but I also know "that one guy" that did a lot of things that are rather extraordinary and not necessarily doable for your average guy.

It seems very encouraging on the one hand, but I just don't know if I would have the discipline and organization to become knowledgeable on my own without any real background.

I was three or four courses away from getting my math BS for just about five years. It's been a while since anyone has asked me about it. Most places don't really care about a degree if you can demonstrate that you can code, and places that do are just reducing their ability to compete for programmers.

More importantly, a good masters in CS will not teach you to program. You'll learn computer science, which is a neat field especially if you like math, but you won't learn to program.

Johnny Cache Hit fucked around with this message at 15:54 on Aug 30, 2012

Johnny Cache Hit
Oct 17, 2011

hieronymus posted:

I was a philosophy undergrad and got tired of people making the "philosophy, whatever are you going to do with that?" joke, so I'm working on my masters while shaking my rear end for money as a SDET by day. Don't judge!

One of the coolest programmers I've ever known did the same thing :3: He always jokes that he got his philosophy degree so he wouldn't turn into a "typical STEM major rear end in a top hat". So yea more programmers need philosophy degrees, I guess.

Johnny Cache Hit
Oct 17, 2011

Devvo posted:

I was thinking about trying to go to Germany and taking advantage of their super-cheap English Master's programs. Semester fees are about 250 euro/semester and most states don't have tuition. Combined with living costs, a 2 year program seems like it would only cost me about $22-23k US dollars, so that might be an exception to the whole "don't go for a Master's in CS" mentality around here. (If I could land any sort of part-time IT job over there, my costs would be half.)

It helps that I like math and *might* be able to handle research. So the trade-off ends up between having 2 years of work experience & good money versus being able to live in a different country while I'm still young.

Most people are saying "don't get a MS in CS to learn programming." There are plenty of very valuable things you can get out of a masters degree - my school did a lot of crossover with the electrical engineering program and offered masters that focused on computer vision, AI, bioinformatics... any of those would've been interesting and a good start in the field. I was just saying "don't think a masters will teach you to program". So yeah if you are interested in the program, go for it!


Not Dave posted:

Does anyone have an idea of how bad the Chicago/Indianapolis area(s) are for finding programming jobs, or any compsci jobs for that matter? Whenever I look around the internet, all I ever find are posting for senior positions and people with 3-5 years of experience and proficiency in a myriad of platforms.

Where are you looking? If it's just job posting sites, you probably won't find much. I'm in a much smaller city in the Midwest and there are a ton of programming jobs out there, but you'd never guess from looking at Dice.com or similar job sites.

Johnny Cache Hit
Oct 17, 2011

etcetera08 posted:

Do go on...

I don't know how much faith I put in statistics from placement agencies and hiring managers, but they'll all tell you that "80% of jobs aren't publicly advertised." For some personal examples, I'm working at my current job after bumping into an old coworker at a bar and talking about his new job. Before that I landed a position at a startup with three guys I'd interned with before. Hell, just yesterday I had a meeting with my manager and he offhandedly asked me if I knew anyone that might be interested in an open QA engineering position.

Make a list of all the programmers you know - the ones you interned with, the ones that you chatted with in data structures, the ones you are friends with on Facebook. Tell them you're looking for a job & ask if they have any tips or references.

In my city we have monthly meetups where programmers go drink beer and chat. Go to those and meet some people. You might get lucky and start talking to a CTO, but even if you end up talking with a fellow programmer ask them if they can introduce to someone they know that you can talk with about finding jobs/contracting opportunities/whatever.

I'm not a programmer wunderkind that is aggressively hunted by other companies, so I have to stay on the hustle. That means networking like mad.

Johnny Cache Hit
Oct 17, 2011

gucci void main posted:

It's just C#, so that's not the part I'm worried about so much as the ASP.NET part. Based on the screen call, the guy didn't seem to mind, but I'll have to figure out if I want to go or not. I don't want to waste their time, but more so my own because the location is 40 minutes away.

If you think you were completely honest on the screening call and the manager understood your limitations, I'd say go for the interview. Remember that whatever the recruiter tells you is third hand information and could've been accidentally or maliciously under/over/misstated either by the company or the recruiter.

I'd rather waste a little time than miss a good opportunity. Just continue to be forthright about your lack of .NET experience in the interview.

Johnny Cache Hit
Oct 17, 2011

idolmind86 posted:

See, with my current job, when I have to solve a problem, I have the luxury of researching the tools that are out there and coming up with an informed decision based on my ten years of development experience. In an interview when it's just me and a chair, I don't have that. In my opinion these questions don't do a good job of determining a good candidate, but if someone asks them, I want to be prepared.

I think that's your answer for any programming questions.

Seriously, you've got (at least) ten years of experience in a company and have demonstrated the ability to take on more responsibility. That's why a company will hire you. Honestly I'd be worried about working for a company that asks you the same questions they ask a 22 year old fresh out of school with zero experience.

I've got maybe half the experience you do and even then my past interviews have shifted away from "show us you can implement foo on the whiteboard" and instead have focused on what I've done at my last few jobs.

Johnny Cache Hit
Oct 17, 2011
^^^ yeah

My current job was searching for Ruby developers. I applied with zero Ruby experience. They didn't care because I was a capable Python developer and they could finally fill a position that was open for over nine months. Open positions can cost companies serious money. At the end of the day it was way more cost effective for them to hire me to learn Ruby than it was to keep searching for the perfect Ruby developer to come along.

Seriously companies are dying to hire developers. The only time you are going to really run into problems with requirements is the top tier companies where everyone wants to work. So just apply for the job. The position might have gone unfilled for months, or they might not really need that much experience. And even if they do, maybe they have an unlisted position or two that you could fill. Apply apply apply. What's the downside? They don't hire you?

hobbesmaster posted:

At startups you can probably even get a "director" level title!

I was a CTO for a while :v:

Johnny Cache Hit
Oct 17, 2011

Strong Sauce posted:

So yeah I would say apply, but if I'm going to be honest about this: if the position is a legitimate senior level position, and they hire someone with little to no experience, that is probably a bad sign.

I don't necessarily disagree. I have, however, noticed quite a bit of variability in what companies call "senior" developers. Some use it as a way of saying "we'll pay you more because you are experienced." Some use it to mean "you'll be a technical lead/project manager". And I worked at a few companies that used it to mean "you've been here for a while, so..."

All I'm saying is that if your experience is reasonably close to a listed position, you should send in a resume & try to interview, because the opportunity cost in not trying can be very high.

(In my case I'd never interview for a senior Ruby position with 0 experience, so don't think I'm advocating that. it was probably bad of me to mention that anecdote in a discussion of senior level positions :saddowns:)

Johnny Cache Hit
Oct 17, 2011
OK, this is more of a "business of programming" question. I've been recently approached to do some contracting for a startup as a side gig.

What should I do to cover my own rear? I'm going to be sure to carefully manage expectations regarding my time. Should I think about a contract, or is that way overkill for something part-time?

Johnny Cache Hit
Oct 17, 2011

Plorkyeran posted:

Unless you're getting paid upfront or daily, if you're doing work for money you should always have a contract.

I figured as much. Are there any decent pre-made contracts out there for programmers that you know of/could recommend? Or is this firmly in "get a lawyer dummy" territory?

Johnny Cache Hit
Oct 17, 2011

gariig posted:

I have a question, how much stock do you put into glassdoor.com? A recruiter called me about a position and I looked the place up and it had a 34% would suggest this place rating. That seems really low to me, but it's for an insurance company so I'm sure there are tons of jobs and most of them aren't in development

I wouldn't necessarily run screaming yet. Sites like that suffer from serious statistical biases - the people who really hate/really love the place are the ones who will be responding, the people with more moderate opinions probably won't.

Of course I'm a firm believer of "if the position sounds interesting, interview!", so...

Johnny Cache Hit
Oct 17, 2011
Personally I'd take management and coworkers I respect over incompetent people any day, even if it means a pay cut. That said, don't fall into the trap of thinking that your coworkers are the only smart coworkers, your office kitchen is the only one stocked with snacks, etc -- because it might very well be possible to find a job that has all of that AND a better salary.

I personally worked in a situation that sounds like yours and ended up staying far too long because I convinced myself the grass couldn't be greener. After a few years of "sorry, no raises..." I finally interviewed around and saw how much money I was leaving on the table. My current job has more pressure and different perks (they don't stock treats but do treat us to stock) but at the end of the day I don't regret the move.

Basically just don't let yourself get complacent. It's wonderful to be happy with where you are now, but always think about moving forward, or at least keep it in the back of your mind. Ask yourself "in one/two/... years if I don't get a raise of $X/options/whatever else, what's my plan?"

Johnny Cache Hit
Oct 17, 2011

BirdOfPlay posted:

Nope and don't have relevant work experience either. To be fair, it was this thread that supported the notion that a degree isn't strictly required.

A degree isn't strictly required for many positions but hoo boy does it make things easier. And most people that don't have their degree traded it for a ton of experience - if you've got neither you're really at a disadvantage.

If you're that close to a degree is going back to school an option for you?

quote:

Ha. I do have one, finally, and the aforementioned project will be the showcase piece of my account. Serious question, where do you put a link to your github on a resume? Just add it to the header with your other contact info?

I do:
Name
Email | Github
Phone
Address

Since you're going to hang your hat on yours, be sure to talk about any meaningful projects it contains as you would a job.

Johnny Cache Hit
Oct 17, 2011

BirdOfPlay posted:

I know, but I'm a cocky basterd and like to think of myself as one of those "good programmers developers," with or without a degree. I mean, if FizzBuzz can actually weed out a fourth of applicants (even if the have a degree), I can't be the worst one out there.

It's a vicious cycle, I need a decent (like $20k+) job to be able to swing going back and finish and getting a degree is the best way to get a decent job.

I hear you, and I don't mean to bum you out. It just sounded like you were pretty close to getting the degree in your comment and I was wondering if finishing it quickly was an option. If it's not, no biggie. Hell, a few years ago I was in the exact same position you are in now :shobon:

Otto's probably right, see if you can pick up some webdev work. I don't know if thats in your current skill set but you can probably learn it quickly. Look around for some digital agencies in your area and email your resume. The ones I have experience with tend to ignore degrees and past work and instead hire based on your portfolio. At the last place I worked some of the programmers had degrees, some were artists that learned Python, and almost all of ended up working there based on the strength of their side projects. It's a really nice hiring practice that I wish more places would use.

If web development isn't your cup of tea, you might look at iOS development. Unfortunately it can be expensive to get started if you don't already own Apple everything, but it's ridiculously hot right now and if you can make iOS apps those digital agencies will hire you in a heartbeat. I've got a friend who taught himself iOS and he is getting calls from headhunters almost every week.

Good luck, you'll get there.

Johnny Cache Hit
Oct 17, 2011
I'd go B for the reasons tk and kitten smoothie raised. I'm done with the "it's a fun environment! we all drink all the time!but we expect you to join the 24/7 death march" type of job.

Either way you've got a great opportunity to negotiate. Send a counter-offer to B, ask for more vacation days and a higher salary to offset the loss in benefits you'd otherwise get. Having two strong offers leaves you in the best position imaginable.

Adbot
ADBOT LOVES YOU

Johnny Cache Hit
Oct 17, 2011

lmao zebong posted:

Thanks for all the advice posted in response. I feel like I should clarify a couple things. While I do think Company B's app is better, by no means did I mean to imply that Company A's product was subpar in any way. It is actually an application I use quite frequently before even applying there, and would be a product I would be proud to be a part of the development team on. While I do think that the work/life balance at Company B would be a bit nicer, Company A is an established, large-ish company and don't do the startup 'work 12 hours a day' type of deal. I think the balance is fairly even at both companies, but I do expect to work a bit more hours over the course of a month at Company A. However the commute is so much nicer I think that I would get home around the same time every day at both companies. I'm also a fairly healthy person so getting some extra exercise in a longer walk is not really a perk for me.

Meshing well with the team and culture was the biggest priority for me, and after mulling it over for a while I decided to go with my gut and went with Company A. I felt like I connected very well with the iOS team, and while the other guys were great I didn't think it was as good a fit. However, I did manage to use the other offer as leverage and got another $5,000 added to Company A's offer, which was awesome. I'm very excited to start working as a software developer, and am still shocked that I was able to get such a great salary right out of college. Thanks again for all the advice given, I took it all to heart and it helped me make the final decision.

Way to go! I'm glad you took the opportunity to negotiate your salary. Far too many people don't.

I hope you enjoy the job :)

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