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
Enderzero
Jun 19, 2001

The snowflake button makes it
cold cold cold
Set temperature makes it
hold hold hold

unixbeard posted:

oh. well thats even more embarrassing that i missed it :)

It seems like things are slowly getting better in the US, unemployment is turning down and if that can be sustained it would be a very good sign. There is still that deficit though, but i guess that will be our children's problem.

That's just the media narrative, unfortunately. Unemployment is a rigged number, the actual number is much higher and, even worse, we are millions of jobs behind where every other recessions were at this point. Also adding a 100,000 jobs a month barely even covers the new workers entering the workforce.

The deficit doesn't matter except that we aren't increasing it to spend on jobs or infrastructure, which would spur growth which will lessen the size of the deficit. It's simply a stalking horse being used to justify passing austerity measures while we give away a trillion to the rich in tax cuts. The deficit will also allow republicans to continue slashing social programs en masse.

Businesses aren't hiring because they've realized everyone is so scared of losing their jobs that they will just do the extra work silently. This is why you hear "jobless recovery" being thrown around so much, but it's a temporary stopgap. People can only do that for so long before they get run ragged and between that, unemployment running out for more and more people, broke states, and a non-existent social net, it could get bad really quickly.

Also there's another wave of sub-prime mortgages due to explode soon, the majority in congress has explicitly stated that their #1 priority is beating Obama, the vast majority believe our problems are because of the poor and mexicans, and the top 1% have nearly doubled their percentage of wealth owned in the last 30 years. It's not looking good, sadly.

Enderzero fucked around with this message at 22:32 on Jan 7, 2011

Adbot
ADBOT LOVES YOU

FinkieMcGee
May 23, 2001

Look, I have to go identify our dead father's body. I'm sorry you're having a bad drug experience, but deal with it.

Cicero posted:

What sort of questions do you feel are good for figuring this out? I mean if you ask them, "How do you like working here?", the response basically always amounts to, "Oh it's awesome in seven different ways". How do you get a real feel for what the company is like?

tef has some good ones

I start basic and make sure they know what they're doing to some degree:

1. What type of source control do you use. If they have none that's a major red flag. If they have something that's remarkably outdated like Visual Source Safe that's a red flag as well.

2. How big is the team I'll be working in? Who will I be reporting to?

3. What's the general process you guys go through to go from conception to something that a customer is using? Really depends on the shop but it can give a pretty good perspective on whether they are messed up or not.

4. What's your turnover like?

5. Do you guys do any outsourcing? How does that fit into your development process?

6. Depending on the gig I usually ask questions regarding their server architecture.

7. What would my role be a year from now?

8. What's a typical work day like for you? What would my typical work day be like?

Really I just need enough information to gauge what it's like there and whether they're spending a lot of their time putting out fires or whether the culture is soul crushing.

And yeah, if they use the term "Rockstar" developer, run. Things are probably terrible there and they need a messiah to pull their poo poo together. You probably don't want to be the underpaid bastard that has to do that.

Cicero
Dec 17, 2003

Jumpjet, melta, jumpjet. Repeat for ten minutes or until victory is assured.
Good news, everyone!

quote:

CareerCast rated 200 jobs based on income, working environment, stress, physical demands and job outlook, based on data from the Labor Dept. and U.S. Census and researchers' own expertise.

Software engineer overtook last year's top job, actuary, which fell to No. 3, behind mathematician. The rise was mainly due to a robust hiring outlook, attributable in part to the rising popularity of social media and mobile applications, said Tony Lee, publisher of CareerCast and JobsRated.com. Last year, software engineer placed second.
Take that, actuaries!

shrike82
Jun 11, 2005

Cicero posted:

Good news, everyone!

Take that, actuaries!

It's a matter of perspective I guess.

From the article

quote:

Mr. Severe says his salary is in line with what most software engineers at his level earn. Most earn a typical mid-level income of about $87,000 and top out at $132,000, according to the study, putting them in the top 25 of all professions by income.

Not to get all D&D but I see some of my smartest friends at college (was a CS major) working at Microsoft and Google and they can expect to top out at 150-200K at the end of their career; less for people at other companies. That's how much an associate (i.e. 3rd year out of college) trader/i-banker/lawyer makes.

If you're the top 10% at a CS program, I'd even argue that you should move out of the software development field and get a job in a better-paying field like finance.

rjmccall
Sep 7, 2007

no worries friend
Fun Shoe
I feel ethically compelled to note that this is a terrible time to become a lawyer.

necrobobsledder
Mar 21, 2005
Lay down your soul to the gods rock 'n roll
Nap Ghost
The enjoyability of the finance sector varies considerably though. Let's not forget that investment bankers, after all, continuously report among the lowest rate of job satisfaction. Most software engineers aren't as concerned about their salary as their general job satisfaction, which is mostly achieved by writing decent software that makes a meaningful impact to folks.

I don't do software engineering anymore exactly (I do a mix of writing software and IT admin and architecture), but given what I've heard from my peers I should be able to top out at $200k without having to be stuck at one company forever nor hopping jobs every other year like I have been forced to due to many large companies treating even top-performing employees like utter crap. I'm pretty happy with the flexibility I get with my job now and the opportunities it gives me both personally and professionally, so I'm fine with sticking this out for once.

Also, being in finance (especially on the trading side) almost guarantees you'll be in NYC (or another metropolitan area with :psyduck: costs of living like say London, Luxembourg, Tokyo), and $200k in NYC isn't quite the same as NYC in, say, Silicon Valley. On second thought, I'm here in the Valley and I think NYC is arguably cheaper to live in than here.

FinkieMcGee posted:

And yeah, if they use the term "Rockstar" developer, run. Things are probably terrible there and they need a messiah to pull their poo poo together. You probably don't want to be the underpaid bastard that has to do that.
There's no truly foolproof way to not find out a terribad employer (much like screening out all terribad employees) with these sorts of criteria though. I mean, I checked off all the questions and so forth you mentioned and I still got stuck doing 100+ hour weeks while basically on-call 24/7 (not quite because they didn't put up a plan, but because the other resources were loving incompetent) while I became a one-man development and architecture team.

The right spot I feel anyone should be on a team is to be somewhere near the middle in terms of an aggregate combo of skill / talent and experience along with similar work ethic and general attitude. This doesn't mean that you should just try to blend in (far from it) but that you should be able to both mentor someone and learn something from someone else. I've found my job most enjoyable in this sort of general cycle (ok, and with a product I think is kind of neat and meaningful somehow). I've learned to separate the parts of software engineering I really enjoy from the parts I do and made it so I have the freedom to do heads down development while at the least having the satisfaction of billing people extra for wasting your time or forcing you to do stupid crap you disagree with.

shrike82
Jun 11, 2005

necrobobsledder posted:

The enjoyability of the finance sector varies considerably though. Let's not forget that investment bankers, after all, continuously report among the lowest rate of job satisfaction. Most software engineers aren't as concerned about their salary as their general job satisfaction, which is mostly achieved by writing decent software that makes a meaningful impact to folks.

I don't do software engineering anymore exactly (I do a mix of writing software and IT admin and architecture), but given what I've heard from my peers I should be able to top out at $200k without having to be stuck at one company forever nor hopping jobs every other year like I have been forced to due to many large companies treating even top-performing employees like utter crap. I'm pretty happy with the flexibility I get with my job now and the opportunities it gives me both personally and professionally, so I'm fine with sticking this out for once.

Also, being in finance (especially on the trading side) almost guarantees you'll be in NYC (or another metropolitan area with :psyduck: costs of living like say London, Luxembourg, Tokyo), and $200k in NYC isn't quite the same as NYC in, say, Silicon Valley. On second thought, I'm here in the Valley and I think NYC is arguably cheaper to live in than here.

Fair point about the enjoyability. Although I'd argue that places like Apple or EA and another game dev companies are worse places to work at than many finance institutions. And the 200K number is start/early-career. It's not unusual to hit 7 figures by end career.

I feel somewhat embarrassed always bringing this up in every CS job related thread but I was a CS major and see a younger version of myself in Cicero and others. There's a tendency to live in a bubble as a CS major - prize smartness and aim for a job at MSFT, Google without considering other fields and the real-world. Another example would be the mild-disdain for the MIS major who many (including myself in the past) would consider the lesser sibling to the CS major when in reality, they get a higher salary out of college and have better long-term career prospects. Or to plan to stay a coder forever when that in effect limits your career growth.

It just depresses me to see literally the best and brightest in the CS field (the top 1%) happy with less than what they should rightfully get paid.

Kilauea
Aug 17, 2008
Do I need to be concerned that my computer science program at my university is not ABET accredited? Should I transfer to a different university?

Also, about the aforementioned 3.0+ GPA, do businesses tend to look at what classes you took? I've had to retake some classes and am wondering if they will see that I did poorly in the past and that it will hurt me.

Plorkyeran
Mar 22, 2007

To Escape The Shackles Of The Old Forums, We Must Reject The Tribal Negativity He Endorsed
Computer science is not engineering.

Kilauea
Aug 17, 2008

Plorkyeran posted:

Computer science is not engineering.

No but the ABET accredits computer science.

Are you saying I shouldn't be worried about my computer science program being completely unaccredited?

Lurchington
Jan 2, 2003

Forums Dragoon

Kilauea posted:

No but the ABET accredits computer science.

Are you saying I shouldn't be worried about my computer science program being completely unaccredited?

I kind of metioned this in earlier post, but I don't think people (as evidenced by Plorkyeran) really think of CS as something that even has a oversight/accrediting body.

So, sometimes there's going to be a certain number of things that are available only to 'engineers' which may or may not bother you.

Also, if you're considering transferring to another university entirely, I feel it's not out of whack to suggest looking at what your school provides for computer engineering. In my case, there's was a loooooot of overlap and could be something that's worthwhile for you.

Here's the ABET-provided page to scare you into choosing an accredited program: http://www.abet.org/why_choose.shtml, it kind of just speaks to how other accreditation/certification bodies require an ABET certified program, which isn't surprising.

My sense of the whole thing, is that if your university has a positive reputation in the area of the country you want to work, it's probably fine. But, I graduated before accreditation became an issue.

Lurchington fucked around with this message at 22:23 on Jan 13, 2011

gwar3k1
Jan 10, 2005

Someday soon
I figured this is the best thread for my question.

I have an interview tomorrow for "IT Support Technician" which is a helpdesk role. When they ask me where do I see myself in five years, I don't want to say my actual goal of being on or having completed a masters in bioinformatics.

Is it inadvisable to say I would like to sidestep into a testing or development role having gained exposure to the software via additional helpdesk duties?

What aspirations are employers looking for in helpdesk staff? To be qualified in user support maybe?

Cicero
Dec 17, 2003

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

Kilauea posted:

Do I need to be concerned that my computer science program at my university is not ABET accredited? Should I transfer to a different university?

Also, about the aforementioned 3.0+ GPA, do businesses tend to look at what classes you took? I've had to retake some classes and am wondering if they will see that I did poorly in the past and that it will hurt me.
Some do. I failed almost my entire first year of college, but the grades got over-written when I retook the classes and so my official GPA is excellent now. Most places just look at your resume for your GPA, which has worked fine for me. But, when I did applications for Google, they required a full transcript and I think this is probably why I just got a rejection email.

unixbeard
Dec 29, 2004

gwar3k1 posted:

I figured this is the best thread for my question.

I have an interview tomorrow for "IT Support Technician" which is a helpdesk role. When they ask me where do I see myself in five years, I don't want to say my actual goal of being on or having completed a masters in bioinformatics.

Is it inadvisable to say I would like to sidestep into a testing or development role having gained exposure to the software via additional helpdesk duties?

What aspirations are employers looking for in helpdesk staff? To be qualified in user support maybe?

Hey, it will depend on the company a bit. I don't think anyone hiring help desk staff is expecting the guy to say "oh gee if in 5 years im right here manning the phones it will be culmination of all my hopes and dreams" because 99% of the time its not true and they know it. People come and go at every level. Ask them how the role became available.

If you really need the job then play it safe, but at the same time no one really stays at the same job forever and employers know this. There is nothing wrong with being interested in more than your direct role, but at the same time make it clear you understand you're being hired to do a job and you're prepared to work and take your role seriously.

Maybe after a while one of the developers or QA people leave, which is not uncommon in IT especially. Then there is you, someone who has worked in support and knows the products well, has gotten to know the development team and their management and gets on with them, and has a track record of doing a good job and not being a jerk, well why would you not be someone who should be seriously considered as a replacement? As long as you can show you have the technical skills required, be it familiar with the testing tools or development environment etc, all stuff you can learn about chatting with the devs or qa peeps and doing a bit of legwork. And then even if they don't put you up for consideration you have learnt about all that stuff and how it all works and they are generally very transferrable skills.

There are obviously boundaries, but if you never tell the people who can help you get where you want to go they will never know. If its a big company they will have an internal job board and keep an eye on the job ads that are placed. This is where it comes down to the company a bit. Some companies may just try and screw you, and if that's the case they are poo poo companies and the best thing you can do is move on, but most of them value good people who want to stick around and have experience in a bunch of different areas. And even if it doesnt work out you have at least learnt a bunch of new skills that you cant pick up in a classroom and have maybe made some contacts a long the way. People move around and 2 years later many of the people you work with today will be at different companies, and they too will know you're generally switched on and interested in this and that and that will not be to your detriment.

unixbeard fucked around with this message at 22:48 on Jan 14, 2011

gwar3k1
Jan 10, 2005

Someday soon
Thanks for the reply.

I had the interview this morning and they appeared to form a new position for me based on my CV and answers to their questions. They accepted that help desk probably isn't my ambition and would support moving into other roles if this hypothetical new role doesn't get realised. They were quite cool about it all, fingers crossed for a call back.

unixbeard
Dec 29, 2004

yeah word. it is pretty easy to pick up insincerity, remember that its a two way street and if it all works out just do what you can to acquire new knowledge & skills and you'll be in a good position.

Mobius
Sep 26, 2000
I recently made a shift away from IT towards development. I was in a technical systems analyst/support/DBA/product guru sort of role for about five years and gradually took on more development responsibilities. I left that company to pursue development full time. My title right now is technically "programmer," but I think I'd eventually like to be in a "software engineer" or "architect" type of role.

Basically, I love the whole process of software development, but I REALLY like the bigger picture side of identifying business needs and/or deficiencies in current systems, then determining how to re-engineer them or build new features and products to fill gaps.

I consider myself a competent, but not amazing coder. I don't have a CS degree. I see my current role as a chance to improve those skills, but I'm never going to be the guy that eeks the most out of every single CPU cycle, or busts out a brilliant algorithm in no time. That's just not where my interests lie.

Am I right in thinking that an engineering or architect position is where I should be aiming? If so, what steps can I take next to move into that kind of role? My current position has opportunities to move into a tech lead or management position, but there's nobody in an architect sort of role that guides the long-term vision of the product.

Contra Duck
Nov 4, 2004

#1 DAD
It sounds to me like you'd rather be a business analyst. That's basically all about identifying requirements and designing solutions for them.

Goonamatic
Sep 17, 2005
cunning linguist
Im currently interviewing.

Trying to do as many online tests as possible.

Found this one which Im having trouble with -- -- got the test but couldnt get the answer in the self certification test

http://codility.com/

Anyone else able to give this a go & see how they go?

Mobius
Sep 26, 2000

Contra Duck posted:

It sounds to me like you'd rather be a business analyst. That's basically all about identifying requirements and designing solutions for them.

No, I really don't want to be a BA. I want to do the requirements and design AND coding. I like coding, I'm just more interested in solving problems with my code than writing "the best code ever." Hence why I don't think I want to be a pure coder.

csammis
Aug 26, 2003

Mental Institution

Mobius posted:

No, I really don't want to be a BA. I want to do the requirements and design AND coding. I like coding, I'm just more interested in solving problems with my code than writing "the best code ever." Hence why I don't think I want to be a pure coder.

I've found that doing all three of those things by yourself leads to (a) blind spots or (b) lack of attention to one or more of the three which leads to (c) crappy results. Gathering requirements especially should be done by someone who has a keen knowledge of the solution space but not necessarily the potential coding solutions (lest the gatherer [un]intentionally ask the customer leading questions).

unixbeard
Dec 29, 2004

Mobius posted:

Am I right in thinking that an engineering or architect position is where I should be aiming? If so, what steps can I take next to move into that kind of role? My current position has opportunities to move into a tech lead or management position, but there's nobody in an architect sort of role that guides the long-term vision of the product.

You should check out this book

It's rare you get someone who is an architect who isn't really good at development, not like a whiz at computer science but someone who has a very good low level understanding of how all the technologies work. Someone who the powers that be trust and turn to when things get hard and can fix the problems.

If you're an architect, you effectively have a lot of power. You will set the technical direction based on where you think the industry as a whole is heading, do the high level design of all the components and how they fit together, and ensure that it is aligned with the long term strategy. If you get it wrong you will likely hose the project and all the man years of effort will be wasted.

Most people who need architects know how important a role it is. They are going to want the guy who's opinion they trust. Someone who has made a lot of good calls and has a track record of this. From what I have seen it is most common that the architects have risen from development roles. That way they really understand development and what can be done.

The other thing is the whole 1% inspiration and 99% perspiration. It doesn't take years to come up with a good architecture. You will still need to be involved with the project on a day to day basis, and if you feel development is not your forte, I would look at things like program management. That way, in theory, you could design a system, have a development team with perhaps a separate dev team lead, managing the day to day development stuff that arises. You want a really strong developer leading the developer team v:)v

But yeah, you need to be able to get people to understand why your ideas are good and for them to trust your judgement. You can work on that all the time.

Mobius
Sep 26, 2000

csammis posted:

I've found that doing all three of those things by yourself leads to (a) blind spots or (b) lack of attention to one or more of the three which leads to (c) crappy results. Gathering requirements especially should be done by someone who has a keen knowledge of the solution space but not necessarily the potential coding solutions (lest the gatherer [un]intentionally ask the customer leading questions).

Yeah, I certainly wouldn't expect to do all three in a vacuum on my own, but I would like a position that has ample opportunities to do each. The projects I've enjoyed the most are the ones where I got a few different experts together, I presented my ideas, and then we picked them apart from every angle to really hone the concept.


unixbeard posted:

You should check out this book

It's rare you get someone who is an architect who isn't really good at development, not like a whiz at computer science but someone who has a very good low level understanding of how all the technologies work. Someone who the powers that be trust and turn to when things get hard and can fix the problems.

If you're an architect, you effectively have a lot of power. You will set the technical direction based on where you think the industry as a whole is heading, do the high level design of all the components and how they fit together, and ensure that it is aligned with the long term strategy. If you get it wrong you will likely hose the project and all the man years of effort will be wasted.

Most people who need architects know how important a role it is. They are going to want the guy who's opinion they trust. Someone who has made a lot of good calls and has a track record of this. From what I have seen it is most common that the architects have risen from development roles. That way they really understand development and what can be done.

The other thing is the whole 1% inspiration and 99% perspiration. It doesn't take years to come up with a good architecture. You will still need to be involved with the project on a day to day basis, and if you feel development is not your forte, I would look at things like program management. That way, in theory, you could design a system, have a development team with perhaps a separate dev team lead, managing the day to day development stuff that arises. You want a really strong developer leading the developer team v:)v

But yeah, you need to be able to get people to understand why your ideas are good and for them to trust your judgement. You can work on that all the time.

This is helpful, thank you. Perhaps I'm underselling my development abilities and my interest in coding, though. I really do enjoy coding and definitely want to get better (it's why I took a full-time programming job) and fully expect to get better. I'm just more of a high-level systems thinker than something like a low-level performance guru. I expect it to take years to work towards that type of position, and just want to make sure I'm on the right path from the start!

more like dICK
Feb 15, 2010

This is inevitable.

Goonamatic posted:

Im currently interviewing.

Trying to do as many online tests as possible.

Found this one which Im having trouble with -- -- got the test but couldnt get the answer in the self certification test

http://codility.com/

Anyone else able to give this a go & see how they go?

Assuming you got the equilibrium index one, as that's the one that popped up for me.

Here's a brute force approach in Python. There's probably a better solution though:
code:
def equi ( A ):
    # write your code here

    for i in range(len(A)):
        lower = sum(A[:i])
        upper = sum(A[i+1:])
        if (upper == lower):
            return i
    return -1   

more like dICK fucked around with this message at 02:34 on Feb 9, 2011

_aaron
Jul 24, 2007
The underscore is silent.

DIW posted:

Here's a brute force approach in Python.
I did that one like this:
code:
upper = sum(A)
lower = 0
for i in range(len(A)):
    upper -= A[i]
    if upper == lower:
        return i
    lower -= A[i]
return -1

more like dICK
Feb 15, 2010

This is inevitable.

_aaron posted:

I did that one like this:
code:
upper = sum(A)
lower = 0
for i in range(len(A)):
    upper -= A[i]
    if upper == lower:
        return i
    lower -= A[i]
return -1
Seems to break on large lists. This should give equilibrium at i=50000
code:
>>> for i in range(100001):
	x.append(1)

	
>>> def equi(A):
	upper = sum(A)
	lower = 0
	for i in range(len(A)):
		upper -= A[i]
		if upper == lower:
			return i
		lower -= A[i]
	return -1

>>> equi(x)
-1

more like dICK fucked around with this message at 05:17 on Feb 9, 2011

_aaron
Jul 24, 2007
The underscore is silent.

DIW posted:

Seems to break on large lists. This should give equilibrium at i=50000
That's because there was a typo! lower -= A[i] should have been lower += A[i]
code:
def equi(A):
	upper = sum(A)
	lower = 0
	for i in range(len(A)):
		upper -= A[i]
		if upper == lower:
			return i
		lower += A[i]
	return -1
I just tested with the same list you used, and it seems to work fine if I use the correct code ;)

Randuin
Dec 26, 2003

O-Overdrive~
I've been interviewing a ton of dudes for our web team even though I haven't even written a single line of code for our web tech stack (Even thought my job title is Web Developer). But I still do okay interviewing them.

My usual routine is to ask about their experiences and technologies they've worked with. Simple algorithms and data structures for pure competence check. Usually like to try and find something you're uncomfortable with, and then just drill into that, and see how you are under pressure. Unless you're coming in for a senior position, no one really expects you to know everything but it's the thought process that really matters.

May be we do things differently? Game companies are kinda lax so I dunno.

IratelyBlank
Dec 2, 2004
The only easy day was yesterday

Mobius posted:

No, I really don't want to be a BA. I want to do the requirements and design AND coding. I like coding, I'm just more interested in solving problems with my code than writing "the best code ever." Hence why I don't think I want to be a pure coder.

I work at a small defense contractor company that does full IT for an Air Force squadron and I handle everything about a project start to finish. We only have 3 programmers and we rarely ever collaborate or receive any guidance from anyone except the person/group who wants the application. I write a lot of really specialized tools for people based just on what they want or modify larger existing applications when bugs come up or when changes need to be made. I've also spent a great deal of time upgrading old applications, we have a lot of VB6 stuff that I have spent the past 2 or 3 years upgrading to C#/.NET 3.5.

It's a really good job and I enjoy it here but I could see myself getting really bored with this kind of thing if I wasn't still in school. I am still working on my CS degree and I use my down time to do homework and things like that. I have free reign to do whatever I want and I have very little oversight, so this past week I spent a lot of time programming in a lot more logging functionality into existing applications just because. This job is as challenging as I make it and it works for me right now, but in a few years I will probably want more.

I try to take time to learn new things that aren't required for my job, but enhance my personal knowledge. Lately I have been working on trying to do more data processing with F# (we only use .NET) because I found it really interesting. At the same time, I am really worried about how I would do in a job at a large company. My only experience has been with the company I am with now, and I have always been left to my own devices or with just one person supervising me. I started 5 years ago as a "database developer" where I did a lot of SQL DTS work to produce finance reports and was promoted to a "associate software engineer" at a different base a year later, and I have been here for 4 years now. Even with 5 years of experience, I don't feel like I could compete with someone with a CS degree, although I may feel differently once I earn my own.

Chasiubao
Apr 2, 2010


Mobius posted:

I recently made a shift away from IT towards development. I was in a technical systems analyst/support/DBA/product guru sort of role for about five years and gradually took on more development responsibilities. I left that company to pursue development full time. My title right now is technically "programmer," but I think I'd eventually like to be in a "software engineer" or "architect" type of role.

Basically, I love the whole process of software development, but I REALLY like the bigger picture side of identifying business needs and/or deficiencies in current systems, then determining how to re-engineer them or build new features and products to fill gaps.

I consider myself a competent, but not amazing coder. I don't have a CS degree. I see my current role as a chance to improve those skills, but I'm never going to be the guy that eeks the most out of every single CPU cycle, or busts out a brilliant algorithm in no time. That's just not where my interests lie.

Am I right in thinking that an engineering or architect position is where I should be aiming? If so, what steps can I take next to move into that kind of role? My current position has opportunities to move into a tech lead or management position, but there's nobody in an architect sort of role that guides the long-term vision of the product.

Sounds like a cross between a PM and a developer. Depends on the team and the company, every one uses their PMs (or equivalent) differently. From my experience you won't get to do the 'determining how to re-engineer them' bit. PMs get the requirements from the users and then developers come up with solutions to satisfy them. At least on my team, that's how things go.

Found Your Answer
Jul 9, 2004

That's like killing a unicorn!
Pretty general question: how much do CS employers seem to care about your general GPA vs. your CS-classes GPA? I ask because I'm averaging a ~3.85 in my CS classes here at university but closer to a 3.3 in my other classes (and I did get a 2.6 in one of my math classes... oops). I feel like I'm generally a good programmer (I fall into the typical "already has experience with 90% of the stuff discussed in class" crowd in class but still pay attention/do well) but I don't know how much my overall GPA will hurt me when job time comes around.

csammis
Aug 26, 2003

Mental Institution

windwaker posted:

Pretty general question: how much do CS employers seem to care about your general GPA vs. your CS-classes GPA? I ask because I'm averaging a ~3.85 in my CS classes here at university but closer to a 3.3 in my other classes (and I did get a 2.6 in one of my math classes... oops). I feel like I'm generally a good programmer (I fall into the typical "already has experience with 90% of the stuff discussed in class" crowd in class but still pay attention/do well) but I don't know how much my overall GPA will hurt me when job time comes around.

It really depends on the employer. Some employers don't let sub-n GPAs past the initial recruitment threshold at all. Some employers look at GPA, ask questions about serious discrepancies, and evaluate the candidate based on a variety of attributes that may or may not take major GPA into account by itself.

This won't help you right out of college but it seems to be the case that for the majority of employers, GPA completely stops mattering after a while. Anecdote time: my undergraduate cumulative GPA was 2.7 ( :2bong: ) and my major GPA was around 3.5. Recruiters for a certain Kansas-based GPS company came to a career fair at my university, saw my GPA, and literally crumpled up my resume in front of me and threw it into a trash can. Six years later I'm working for a different software company in Kansas and getting recruiting calls from the aforementioned GPS company on a regular basis v:)v

kimbo305
Jun 9, 2007

actually, yeah, I am a little mad

csammis posted:

Recruiters for a certain Kansas-based GPS company came to a career fair at my university, saw my GPA, and literally crumpled up my resume in front of me and threw it into a trash can.

To be honest, that would be kind of cool to see happen.

I would hesitate with a candidate with a below 3.0 total GPA, but if he demonstrated competency and real experience during his interview, I wouldn't have any issues hiring him.

csammis
Aug 26, 2003

Mental Institution

kimbo305 posted:

To be honest, that would be kind of cool to see happen.

It was probably either very funny or completely terrifying to the other job seekers around me. It's one of my favorite hiring stories now :)

deadjb
Aug 11, 2002

DIW posted:

Assuming you got the equilibrium index one, as that's the one that popped up for me.

Here's a brute force approach in Python. There's probably a better solution though:
code:
def equi ( A ):
    # write your code here

    for i in range(len(A)):
        lower = sum(A[:i])
        upper = sum(A[i+1:])
        if (upper == lower):
            return i
    return -1   

At the risk of Stairway to Heaven-ing this, here's the solution I came up with:

code:
int equi ( const vector<int> &A ) {    

    if (A.size() == 0)
        return -1;
        
    vector< pair<long long int, long long int> > sums(A.size());
    for (int i = 0; i < A.size(); ++i)
    {
        int j = A.size()-1-i;
        sums[i].first = A[i];
        sums[j].second = A[j];
        if (i > 0)
            sums[i].first += sums[i-1].first;
        if (j < A.size()-1)
            sums[j].second += sums[j+1].second;
    }
    
    for (int i = 0; i < A.size(); ++i)
    {
        if (sums[i].first == sums[i].second)
            return i;
    }

    if (sums[A.size()-1].second - A[A.size()-1] == 0)
        return A.size()-1;

    return -1;
}
Yeah, it's ugly, but it works. Sort of embarrassing, since it actually took me a few tries through. I swear it's just because I wasn't used to the interface!

Mike1o1
Sep 5, 2004
Tiluvas
I've been a business analyst for about 5 years now, and would like to make the transition to software development. I don't have a degree of any kind, but I've taken a few programming courses. I started down a CS degree about 10 years ago, so I have some formal training in C++ (yee-haw?) but haven't done much since. I have been dabbling in programming as a hobby here and there recently on mobile devices, such as Obj-C on iPhone and C#/XNA on WP7. I really enjoy C# a lot, and software design in general, which is what resparked my desire to get back into software.

I have developed a number of small tools for the office during my time as a business analyst, such as Access databases with VBA (I know, it was all I was allowed to do), and managed to sneak in a few tools using VB and .Net 2.0, and do lots of SQL data analyzing stuff. With my BA training, I always followed the SDLC lifecycle, even though they were small tools, but never had access to formal source control. Most of the time I was doing requirements gathering and "high level" system design, but never made any code decisions.

I know I don't have the skills to become a full time developer at this point. What I'm looking for is the best path to make the transition to development from a skills/training perspective.

I've looked briefly at getting MS Certified on ASP.NET or Windows Apps, but I don't know if that's relevant as the only source of formal education. Should I look into going back to school at night?

unpurposed
Apr 22, 2008
:dukedog:

Fun Shoe
I just got out of an interview with Microsoft for an internship position and I feel terrible.

The overall interview went well, but during the coding section I was asked to code up a palindrome checker.

Really simple, right? I set out to do it.

Unfortunately, I ended up writing a naive checker and completely forgot to check for null and empty strings and really hosed up in general. I realized this literally 15 seconds after I walked out. I feel like I completely screwed everything up.

EDIT: Embarrassing code removed.

Just retyping this makes me sick to my stomach as I realize how badly I screwed up. Nervousness kills.

unpurposed fucked around with this message at 21:37 on Feb 17, 2011

kimbo305
Jun 9, 2007

actually, yeah, I am a little mad
Hmm, your interviewer should have called those things out to you either as he was administering the question (this is a way to gauge if you're forgetful or outright ignorant), or after the question was done. Don't worry about it, you'll get used to as you do more.

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

csammis posted:

It really depends on the employer. Some employers don't let sub-n GPAs past the initial recruitment threshold at all. Some employers look at GPA, ask questions about serious discrepancies, and evaluate the candidate based on a variety of attributes that may or may not take major GPA into account by itself.

This won't help you right out of college but it seems to be the case that for the majority of employers, GPA completely stops mattering after a while. Anecdote time: my undergraduate cumulative GPA was 2.7 ( :2bong: ) and my major GPA was around 3.5. Recruiters for a certain Kansas-based GPS company came to a career fair at my university, saw my GPA, and literally crumpled up my resume in front of me and threw it into a trash can. Six years later I'm working for a different software company in Kansas and getting recruiting calls from the aforementioned GPS company on a regular basis v:)v

There's some new regulation that certain federal contractors can't hire anyone straight out of school with a cumulative GPA below 3.15, period end of story. Considering this, I advise everyone to transfer to a lovely school where they can get a 4.0 while learning nothing.

Adbot
ADBOT LOVES YOU

Cyrik
Oct 27, 2010

by T. Finn
Has anyone taken the Berger Aptitude for Programming Test? Any advice?

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