|
Having been on the other side of the conference table here's what I've seen. In the embedded programming world, and granted it's a bit different from normal programming, there are so many resumes a degree is used as a first order filter (electronics, part of that embedded difference) in selecting who to interview. A BA is better than nothing but for a tech job it really has to be a BS degree, unless it's a tech writer or customer training position.
Equivalent experience is just a dodge to avoid legal hassles for dicrimination. HR puts it in there but it rarely has any relevance to the hiring process. Does a degree actually make a difference otherwise? Only for an entry level position. A senior position is all about experience, because we know technical knowledge has a short half-life.
In interviews I started with a couple tech questions, just to eliminate the resume inflators. After that I was more interested in the non-technical skills, things like communication skills (writing, speaking up to express opinions) and some understanding of the economics of commercial software, the importance of project management and the aility to think beyond the assignment for next week.
And that's where the degree does make a difference. Going to a university or college is more than job training, it's exposure to a variety of disciplines. A code bootcamp can teach someone to write code, but it doesn't teach the ability to extrapolate from the immediate into the abstract. Software is more than writing code (yeah, blasphemy!!), it's economics, politics, sociology, and even psychology when you have to climb into someone's head to reverse engineer undocumented legacy code.
Does the 15 years experience count? Sure, but you have to get out of the pack before anyone looks at it. If the degree comes after the experience, no one really cares, because you won't be applying for Grunt Programmer I job classifications.
So if you do go back to school, take some theory classes, Numerical Analysis, Queueing Theory, Finite State Automata, but don't neglect Economics and English, especially writing. At a senior level you have to communicate your ideas in an effective manner to both management and your junior team members.
|
|
|
|
|
This actually makes a lot of sense. in the short amount of time this post has been out I have resolved myself to enroll for one of the online degrees. I've sent in my info and have requested my transcript from when I was in school back in the early 90's. I hope that at they can count some of my credits.
It is a great idea to take theory classes. I was thinking that I would need to take "Intro to Programming" and start from the bottom, but it is perfectly logical that I could take some theory classes to get a BS and then back it up with my real world experience.
Thanks for the insight.
|
|
|
|
|
I definitely fall into the don't need an education camp, based on my 38 years experience in the field. However I was fortunate enough to earn a degree early on, and along the way fell into the defense industry. In that industry hiring companies must have relevant degrees so that they can slot you into a defense contract. Many contracts for skilled labor don't include categories for non-degreed personnel. You have to fit into one of the contract slots so that the company can get paid. They make their money off of the difference in the contract category payment per hour and your salary. So depending on the industry you're applying for its something to consider as you make your decision. Just offering a different perspective than what I've seen here so far.
|
|
|
|
|
If company wants you to have a paper and sneezes at your experience, you don't wanna work for them. Really, you don't. You would regret it from day one of employment.
|
|
|
|
|
This almost has to be measured person-by-person depending upon your background, skill level, and career goals; however, you make one large assumption that may not be true - that school will teach you things you already know. I know plenty of people with over 20 years of experience that are mystified by "memory overflow" errors. Those individuals never took the time to actually understand the underlying principles of what they did and it held them back. That said, school is expensive and time-consuming. It will require tremendous dedication on your part to fulfill the degree requirements and work full time (if that is what you are planning to do). I followed this path myself many years ago and I didn't regret it, but I also look back and wonder how I managed it all working full time, taking 2 classes per semester, and raising a young family.
|
|
|
|
|
It so much depends on yourself - what you have learnt through those 15 years. I've met quite a few non-academics who have learnt what to do, but with a very vaugue understanding of why they have to (or ought to) do it that way. (As in Geek & Poke: TDD [^].) I was teaching for a few years at a tech college, where we had a terrible time 'deprogramming' some of those self-educated guys coming to us for a degree, 110% confident that they knew all the 'right' ways ... that were not.
Then there are those who have learned from their experienced colleagues, and picked up the good practices, and also know the real world problems to be solved (which those coming directly from high school certainly do NOT). They can be the finest students there are, worth their weight in gold, especially in group projects, and even at lectures, asking exactly the right questions to pinpoint the essentials.
When young people ask me for advice about education, my recommendation is: Get yourself a lower degree to learn some academic principles and methods, and quite a bit about practical work, 'the craft'. That ensures that you, according to a systematic plan, have been 'diciplined' to solve problems in a reasonably orderly manner. Here in Norway, we have these three year engineering schools not classified as universities; they educate engineers to do engineering, not to do paperwork.
Then go out and see if you can handle it well - you probably can. If you are an academic by nature, you will often ask yourself lots of 'why's, you would like to know the underlaying ideas and concepts for everything from design methods to code patterns to whathaveyou. Then, after a few working years, you enter a university to learn the theory, the principles. You have the background to understand why, to ask the right questions, to know how to apply the theoretical knowledge - for all of this: in contrast to your fellow students who haven't had a single working day within that professional field. You will gain a tremendous lot more from the academic theory than they will, because you will know why.
But you don't have to know all the theory. I have had colleagues with 3 year basic engineering only, but their mind has been so 'academic' that the have picked up more than enough of the theory on their own. And they have been truly excellent practitioners of the trade.
Your case is one level below at the academic scale: It is not putting abstract theoretical principles on top of a lower degree plus work experience, but putting a lower degree on top of work experience alone. The difference isn't essential. If you do a lot of work mostly because you know that's the right thing to do, but you don't know why, and that bothers you somewhat, then you definitely should go for the bachelor. If you either say 'Well, I know what to do, and that is good enough', or you say 'But I do know all the 'why's!', then you probably would benefit far less from going back to school.
If you are of the self-taught kind that has not been guided by more experienced colleagues, then you probably could benefit a lot - and it might be painful. I tried to teach my students a number of good principles, and a couple of the self-taught ones handed in coding exercizes of fairly good coding quality, headed by a comment line: "This is how the professor forces us to solve the problem:" - and then followed an alternate code block of really messy code, all commented out and with a heading: "And this is how a real programmer would do it: ...". I smiled, recognizing that they at least had learned the good principles, even though they explicitly rejected them. Hopefully they wouldn't be as much in opposition when getting out into the open world.
So it all depends on what you know, your attitudes and work patterns. If you present a few thousand code lines that you have written, would reveal a lot. Having you explain the architecture, the modular structure, of some large system you have been working on, would reveal a lot. Having you explain the principles behind the design of the internal module interfaces in your system would reveal a lot.
You don't go to U to learn the syntactical details of another programming language. You go to learn the concepts of programming languages in general, so that you later can handle all sorts of languages. You learn priciples of graphics programming, not one specific plotting library. Etc. etc. If you know C#, PHP and HTML, but you have no clue about XSLT, how to write a parser, or algorithm complexity, then maybe a bachelor would be a good idea. Unless you say 'I will never need to write a parser or use XSLT, and the CPUs are fast enough so algorithmic complexity is irrelevant', of course.
(Bonus story: A fellow student of mine, in one of his first job assignments had to make use of his parser programming abilities to parse bacteria(!). More specifically: Writing code for automatically classifying microscope images of bacteria of different types. They defined a BNF syntax for images of each type, and parsed the image according to the BNF. Identifying bacteria type A or type B is like identifying a 'while' loop or a 'for' loop - same method, even though the 'tokens' were graphical elements rather than textual symbols. If he hadn't know the idea of a tokens and parsers, of formal grammars and BNF notation, he would have had a hard time in that project! This is the kind of background you get at a U, but rarely in a programmer position in some arbitrarty company.)
|
|
|
|
|
It so much depends on yourself - what you have learnt through those 15 years. I've met quite a few non-academics who have learnt what to do, but with a very vaugue understanding of why they have to (or ought to) do it that way. (As in Geek & Poke: TDD [^].) I was teaching for a few years at a tech college, where we had a terrible time 'deprogramming' some of those self-educated guys coming to us for a degree, 110% confident that they knew all the 'right' ways ... that were not.
Then there are those who have learned from their experienced colleagues, and picked up the good practices, and also know the real world problems to be solved (which those coming directly from high school certainly do NOT). They can be the finest students there are, worth their weight in gold, especially in group projects, and even at lectures, asking exactly the right questions to pinpoint the essentials.
When young people ask me for advice about education, my recommendation is: Get yourself a lower degree to learn some academic principles and methods, and quite a bit about practical work, 'the craft'. That ensures that you, according to a systematic plan, have been 'diciplined' to solve problems in a reasonably orderly manner. Here in Norway, we have these three year engineering schools not classified as universities; they educate engineers to do engineering, not to do paperwork.
Then go out and see if you can handle it well - you probably can. If you are an academic by nature, you will often ask yourself lots of 'why's, you would like to know the underlaying ideas and concepts for everything from design methods to code patterns to whathaveyou. Then, after a few working years, you enter a university to learn the theory, the principles. You have the background to understand why, to ask the right questions, to know how to apply the theoretical knowledge - for all of this: in contrast to your fellow students who haven't had a single working day within that professional field. You will gain a tremendous lot more from the academic theory than they will, because you will know why.
But you don't have to know all the theory. I have had colleagues with 3 year basic engineering only, but their mind has been so 'academic' that the have picked up more than enough of the theory on their own. And they have been truly excellent practitioners of the trade.
Your case is one level below at the academic scale: It is not putting abstract theoretical principles on top of a lower degree plus work experience, but putting a lower degree on top of work experience alone. The difference isn't essential. If you do a lot of work mostly because you know that's the right thing to do, but you don't know why, and that bothers you somewhat, then you definitely should go for the bachelor. If you either say 'Well, I know what to do, and that is good enough', or you say 'But I do know all the 'why's!', then you probably would benefit far less from going back to school.
If you are of the self-taught kind that has not been guided by more experienced colleagues, then you probably could benefit a lot - and it might be painful. I tried to teach my students a number of good principles, and a couple of the self-taught ones handed in coding exercizes of fairly good coding quality, headed by a comment line: "This is how the professor forces us to solve the problem:" - and then followed an alternate code block of really messy code, all commented out and with a heading: "And this is how a real programmer would do it: ...". I smiled, recognizing that they at least had learned the good principles, even though they explicitly rejected them. Hopefully they wouldn't be as much in opposition when getting out into the open world.
So it all depends on what you know, your attitudes and work patterns. If you present a few thousand code lines that you have written, would reveal a lot. Having you explain the architecture, the modular structure, of some large system you have been working on, would reveal a lot. Having you explain the principles behind the design of the internal module interfaces in your system would reveal a lot.
You don't go to U to learn the syntactical details of another programming language. You go to learn the concepts of programming languages in general, so that you later can handle all sorts of languages. You learn priciples of graphics programming, not one specific plotting library. Etc. etc. If you know C#, PHP and HTML, but you have no clue about XSLT, how to write a parser, or algorithm complexity, then maybe a bachelor would be a good idea. Unless you say 'I will never need to write a parser or use XSLT, and the CPUs are fast enough so algorithmic complexity is irrelevant', of course.
(Bonus story: A fellow student of mine, in one of his first job assignments had to make use of his parser programming abilities to parse bacteria(!). More specifically: Writing code for automatically classifying microscope images of bacteria of different types. They defined a BNF syntax for images of each type, and parsed the image according to the BNF. Identifying bacteria type A or type B is like identifying a 'while' loop or a 'for' loop - same method, even though the 'tokens' were graphical elements rather than textual symbols. If he hadn't know the idea of a tokens and parsers, of formal grammars and BNF notation, he would have had a hard time in that project! This is the kind of background you get at a U, but rarely in a programmer position in some arbitrarty company.)
|
|
|
|
|
BA degrees aren't special, that requirement is just used as an applicant filter. In this case, your experience trumps the degree requirement many times over, so if you've been practicing many of the technologies they need, apply anyway.
We can program with only 1's, but if all you've got are zeros, you've got nothing.
|
|
|
|
|
It seems most self-tough developers know about 98% of what need to develop most software application. It is the last 2% that employer are after with developers with college degree. Those 2% are the abstract theories, algorithms, patterns, politics, and communications. It is those with the extra 2% that develop compilers, operating systems, and library frameworks to be use by others.
Getting a BA/BS in computer science will give you that extra 2%.
|
|
|
|
|
As you say: 98% of the 'what'. Far less of the 'why'.
'Develop compilers' - you don't have to develop a compiler to need a parser. Very few self-taught programmers can write a decent parser (or define the grammar of the input), not even a recursive-descent one. But we need it all the time.
Anyone can make their function publicly available as an API. That is not to define a decent module interface. Anyone can declare a struct or a class, but defining the right structure of object classes is a different matter. Choosing a suitable algorithm, data flow, pattern of interaction, protocol structure, layering of both code and protocols, ... You don't learn these things just by trial and error. You learn it from someone. They may be your experienced colleauges, if you are lucky. It might be easier to get it from someone who knows how to teach such matters. If your employer has sent you to a selection of good courses (not those 'how to use the product we sold you, or want to sell to you' courses!) you may have it. If not, then might find it in the educational system.
|
|
|
|
|
I haven't read through the entire thread to see if anyone else has given this advice but trust me, apply anyway. It costs you what, maybe another cover letter?
My experience is not so different from your own. Admittedly I spent most of my early dev career in big aerospace (Boeing, GE, TRW, etc.) so I guess your mileage may vary. But I can tell you that every position I held required a degree. Smart companies will still want to talk to you. I took the interviews, got the jobs, made the same money as everyone else.
The requirement is usually to weed out the timid. Go for it.
|
|
|
|
|
The decision, obviously, is on you, but I found myself in a similar situation several years back. I have 28 years of experience, and I realized that getting a degree after so much time working without one would demonstrate dedication and tenacity, and not just serve to satisfy a qualification item. So, I hooked up with WGU. They are 100% online and utilize a competency-based system (pass/fail) instead of the legacy graded system. Along with the fully-accredited degree, I received several certifications (some which amounted to squat) and it makes my resume look pretty darn impressive.
If you investigate and decide to go with WGU, drop me a line so we can say I referred you to the school.
|
|
|
|
|
I'd like to start by pointing out that there's a marked difference between a BA and a BS. Bachelor of Arts degrees typically have much lower requirements, namely the absence of a secondary science. I myself have a Bachelor of Science, with my secondary science being Biology. In college I was strongly pressured to make it Physics (with no valid explanation given,) but since my current employ is in the medical field, it certainly paid off.
In my opinion, any place that 'requires' a degree, but is willing to accept a BA, is not some place where someone with 22 years of experience is likely to be happy.
With regard to the degree itself, it is always better to have more credentials on your CV/Resume than less. However, given your length of experience, it is unlikely that a BA/BS will make any difference in your pay; you may just need to negotiate a little harder. I also doubt that, at this point, with 15 years development experience, a BA/BS program is going to teach you much you don't already know.
TL;DR: The degree will likely provide some benefit to you, but is unlikely to be worth the time, effort, and money.
|
|
|
|
|
Years ago, I would have said to get the degree.
I was one of those guys who was out programming a peer who had a masters degree, and it
was my first real job!
I left and got my degree. I left a LOT of money on the table. I was somewhat bored by
the courses, but I learned a lot, and I never looked back. I doubled my salary getting out.
So, it DEPENDS. If you have a degree and can easily get another one, using your degree to cover
your basics (reducing your effort to a single year, or 2 years part time). then "Consider" it.
And you WANT to do it.
Otherwise, no.
But make sure your Resume makes up for the lack of THAT degree.
BTW, having Any 4yr degree is a great start. (It shows you can follow directions, although
nowadays it means you might need a safe space from people like me, LOL).
If you REALLY want a specific job, be up front about the degree you have, and highlight the
actual skills you have, and ALL of the courses, etc. Iterate the various places you spend time
learning.
As a hiring manager (in my old days), I would sort resumes by: Educ + Exp, Exp Only, Educ Only, Trash
So, you are in the second pile, or the BOTTOM of the first pile in my system.
Hiring is tight. Your resume should get you the first interview.
If there is a strong gate keeper, find them and work with them.
That is their wish list. If they get 3 resumes, they are going to read ALL 3 of them.
HTH
PS: One of the reasons for wanting the degree is easier communication. So display a willingness to do reading. We have a required reading list for all NEW developers. Some of the books are from old college courses. But it helps us to all use the same language.
|
|
|
|
|
I've full of boring meetings for the comming days even the next few weeks. What a waste of time ahead.
|
|
|
|
|
Paint circles on your eyelids, and try not to snore...
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
I just have a question for my American friends: have all of you been polled yet? Have the phone calls (and advertisements) been continuous, or have you been able to take a break occasionally?
TTFN - Kent
|
|
|
|
|
I'm nearly 53 years old and have never been polled (politically) in my entire life. Not once.
As for the advertisements... plenty of local (Northern Illinois) candidates are running ads on TV, newspaper, radio, etc... but none of the presidential candidates are because...
...wait for it....
...I live in Illinois which will invariably be a Clinton win (due to the overwhelming Democratic Chicago "machine") so there is no need to run ads for POTUS here.
Any non-Clinton vote in Illinois is merely a protest vote.
That's what I do. I drink, and I know things. ~ Tyrion Lannister
|
|
|
|
|
Mike Mullikin wrote: I live in Illinois... ...and dream of Tonga[^].
Skipper: We'll fix it.
Alex: Fix it? How you gonna fix this?
Skipper: Grit, spit and a whole lotta duct tape.
|
|
|
|
|
I have not been polled. I have received 8 calls in the last 4 weeks from Private numbers, but I don't answer calls like that and they left no voice mails. I figured they were from telemarketers, but now I wonder...
There are ads on TV, but not really any from Trump - it is probably not worth spending a lot of money on that here in San Diego...
"When you don't know what you're doing it's best to do it quickly" - Jase #DuckDynasty
|
|
|
|
|
There are reports that mainstream media are suppressing ads for Trump. There are also reports that mainstream medias polls are highly inaccurate because they a) poll a significantly higher number of known democrats, and b) their sample sets include fewer than 500 respondents. Social media polls are as much as 60% in favor of Trump - exactly the opposite of mainstream media.
Who should you believe?
".45 ACP - because shooting twice is just silly" - JSOP, 2010
- You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
- When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013
|
|
|
|
|
Most mainstream media are all showing Trump stuff on first page; no need for him to spend money on advertisement.
I'd rather be phishing!
|
|
|
|
|
John Simmons / outlaw programmer wrote: Who should you believe? That everyone who is even remotely involved in politics is an @rsehole, maybe?
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Since I'm registered as Libertarian none of the polling companies will bother to call me (registered party affiliation is public record). Yes, we do have other political parties in the US, and no, none of them have had any impact on a presidential race since Perot in 1992. Libertarian and Greens are the largest minor parties, but both have so many nutters (to borrow from the Brits) no one pays much attention to them.
|
|
|
|
|
You might want to talk to your boss. I've been polled twice in the last 24 hours. Or was that not the sort of polling you meant.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|