Unconfigured Ad Widget
Collapse
|
|
|
|
|
|
|
|
Paging software engineers and the like...
Collapse
X
-
This is true to an extent. Programming has become a commodity and less of a "science" or engineering endeavor. Still, I'd go for the CS degree. It's got my foot in the door many times. If you are really interested in the engineering/science of it, get an advanced CS degree, an EE, or a Computer Engineering degree.Personally I find college and school a waste of money in these fields. Hands on is where it's at in CS and Programming in my experience. I have a friend that spent far too much time and dough on classes and certifications and all that crap. Pick a language, build an application that does something and you'll get a ton of experience, maybe even a product. Use that in your interviews.RKBA Clock: soap box, ballot box, jury box, cartridge box (Say When!)
Free Vespuchia!Comment
-
Based on the large number of software engineers I know, here are some tips:
1) SW engineers don't get an exemption from personal hygiene upon graduation. You are expected to bathe, and wear clean professional attire just like everyone else.
2) Most places of employment have core hours, coming in at noon every day isn't acceptable.
3) Keep track of how many times your grandma died as an excuse for #2; your boss will eventually start counting.
4) Don't care how great your code is; if you can't write a report or prepare a presentation to defend your work - it's worthless.
5) Software runs on hardware platforms. Learn and understand how those platforms work, and what you need to do to use them efficiently.
6) Software interacts with other "things", understand how that happens and what the big picture is.Last edited by Satex; 08-19-2014, 9:04 PM.Comment
-
Many potential employers will never see your resume without a degree. This may be your/their lose but that's the reality. Some times skills aren't enough.This is true to an extent. Programming has become a commodity and less of a "science" or engineering endeavor. Still, I'd go for the CS degree. It's got my foot in the door many times. If you are really interested in the engineering/science of it, get an advanced CS degree, an EE, or a Computer Engineering degree.Comment
-
You're going to start off sailing through Linear Algebra, then a few weeks in, you'll be saying "eigen-what?"
As others have mentioned, go for an internship, paid or unpaid. That was one of my regrets after I got my CS degree. Otherwise, you need to be really good at networking with people. Every job I've gotten is because I knew somebody. Join some kind of campus club and meet people. Some people I know started LinkedIn profiles in college. Not sure how useful it is, but it may not hurt as you start networking.
Work on projects of your own to build up some kind of a portfolio. IT and some development careers can be had even without a college degree, but they had previous work or experience to show for. I know an undergrad who landed a job because he could show actual sites that he's developed. It worked for him because he's passionate about it.
Lastly, be open to non-development positions. You may end up in IT, handling networking, servers, storage, security, SQL, etc. I started off as a developer, got stuck keeping an aging application on life support, and finally switched teams to become a system administrator who manages Windows servers. And, I'm happy doing it. I still get to take what I know and write scripts to make life easier.NRA Life Member
Asian Dad ReviewsComment
-
1. :laughing: Oh man...some of my classmates...not to sound stereotypical but even the ones who AREN'T foreign have problems with hygiene sometimes. On the other hand, see screen name.Based on the large number of software engineers I know, here are some tips:
1) SW engineers don't get an exemption from personal hygiene upon graduation. You are expected to bathe, and wear clean professional attire just like everyone else.
2) Most places of employment have core hours, coming in at noon every day isn't acceptable.
3) Keep track of how many times your grandma died as an excuse for #2; your boss will eventually start counting.
4) Don't care home great your code is; if you can't write a report or prepare a presentation to defend your work - it's worthless.
5) Software runs on hardware platforms. Learn and understand how those platforms work, and what you need to do to use them efficiently.
6) Software interacts with other "things", understand how that happens and what the big picture is.
I'd post a pic but even as damn good looking as I am I'm not banging high profile chicks every day or driving a Porsche, so, ya know...lol (OT reference for those who don't lurk in the Off Topic forum). Suffice to say I'm a bit of a clean freak, generally shower twice a day, work out incessantly, and know how to look good even in just jeans and a T shirt.
2. 10 years in the military. I'm very familiar with punctual. Also, I ride a motorcycle, so traffic isn't a huge deal here in the bay area. It's a huge relief and nice to just be able to show up on time/5 minutes early vs "15 minutes prior to 15 minutes prior to formation".
3. She's on her way out unfortunately, but hanging in there. That may actually get used in the near future, but only once. I tend to just take pictures of the various car accidents that hold up traffic as proof if I am gonna be late.
4. I'm just as open and straightforward in person as I am in this thread. That being said, I'm working on commenting my code better as reminders to myself what everything is doing - let alone being able to explain it someone else. Sometimes I'll write some code, forget to comment it, come back to continue the next day and be like "WTF was I thinking???". My writing skills are fine though and as long as I know/am comfortable with the material I have no problem briefing someone. It's when I'm told to go blow smoke up someone's @$$ that I get a little nervous.
5+6. Absolutely.Your views on any given subject are the sum of the media that you take in, scaled to the weight of the credibility of the source that provides it, seen through a lens of your own values, goals, and achievements.
You Are All Ambassadors, Whether You Like It Or Not
Pain is the hardest lesson to forget; Ego is the anesthesia that deadens the pain of stupidity.
Bureaucracy is the epoxy that lubricates the gears of progress.Comment
-
Pick a free software project which interests you, fix bugs, and add features. Do a project course where you build something less trivial. Practical experience will make a lot more jobs open to you.
I cover the five or six most important courses here http://www.quora.com/Computer-Scienc.../Drew-Eckhardt.
After 2-3 years of experience at their first job where they learn to work on existing software, do non-trivial things, feel the impact of their bad decisions on customers, and learn first hand the importance of good coding practice when they have to deal with what they did 2-3 years ago.When do you think someone is really viable as a candidate for a job?
You might be able to substitute internships, project courses, and free software for that.
If not your employment options will be a lot more limited. Big companies hire lots of new graduates accepting the risk that some won't work out because there aren't enough experienced people open to working there. Small companies don't because they need people who will be productive immediately and the scope of projects junior people can handle is too small.
Venture funded startup. You can do things beyond your pay grade at big companies (there's more work than people, not less interesting work than senior employees to fight over who gets it) and the pay difference isn't interesting until much later in your career.Startup vs larger company for first/early positions and growth?
I discuss that here http://www.quora.com/Career-Advice/S.../Drew-EckhardtLast edited by Drew Eckhardt; 08-20-2014, 11:22 AM.Comment
-
I've used everything I learned in my computer science courses professionally except artificial intelligence.
Out of the remainder I use everything regularly except what I learned in compiler construction where we built a compiler for a subset of 'C', although that helped me get my first (doing BASIC compilers) and second (working on a debugger) jobs.
I actually used my B+ tree code from Data Structures in a commercial project 8-10 years later because it was easier to get that doing reallocate on write into a log structured file system than changing Berkeley DB.Last edited by Drew Eckhardt; 08-20-2014, 11:25 AM.Comment
-
fun, excitement, hardwork + $$$
If you want to do this ... then I highly recommend you get into embedded systems engineering.
The problem with this discipline however, is that the field tends to favor the EE. If you wish to get a hint of all the "monkey-motion" stuff that entails all things embedded ... then I recommend you drop on by Embedded.com. Yep ... this link directs you to me. I am a guest columnist with UBM ... UBM, (United Business Media), is the 800 lb gorilla of technical publications ...
EDN, EETIMES ... EMBEDDED.COM ... I call them trade rags. These publications are very good in telling the engineer what is popular in the field of EECS. If you want the more hardcore stuff ... then you really ought to become a IEEE member, and join one of the subcommittees. I am currently a member of the COMSOC, (Communications Society)... Also, I am part of the IEEE Hot Chips thing ... (I got finagled into this one by a friend)...
I have been doing embedded systems as an independent consultant for over 25 years now. I really love what I do. I have made a ton of $$$ for my clients ... From time to time ... they do throw me a bone.
Anyhow ... the work is pretty demanding ... interesting and quite rewarding. At times ... you get to work on stuff that touches literally millions of lives.
Me? I got my Masters Degree in Engineering over at UC Berkeley ... Materials Science of all things. I got into this embedded thing while a graduate student there ... I got into systems and control with the Mechanical Engineering division. It was Professor Dornfeld and Dr. Auslander who talked me into picking up robotics and control theory ... and embedded as a minor discipline while I was working on my Masters.
If any of you wish to know more ... just PM me.Comment
-
That's funny about the coffee.Yup, you and I are in complete agreement. You can't get in the door (in this market) without a pedigree.
In response to your previous question, I can tell in a few minutes if a person has done hardware or firmware. And if they are truthful, I think how I can work around that.... Heck we had a 'how would you make a pot of coffee?."
That was one of our standard questions. Serioustalk. One gal who was a A+++ Masters working on PhD basically imploded. She got all weird and walked out of the interview. It's kinda like a 'are you normal' and can you take a joke question. Most folks said, are you serious? And if you are here's how I do it. lolz
I'm down on CS since I've seen so many bad coders over the years who get away with murder. It can be HARD to get a metric on how good a person designs/codes stuff.
But the easiest way is to ask them simple questions like - "What are you working on?", "How does it work?", "Can you simplify the answer?" , "Explain it like you were telling a family member how it works..."
Not that hard. I guess I'm suggesting that maybe an EE degree prepares you for both CS and EE jobs. I dunno. Worked well for me over the years....
Remember - in most high tech firms, VP's are EE's. I was a Director of E until our company got purchased.. lolz..
I learned the basics as a BSEE, specialized in MSEE, and learned how Engineering works at Rockwell (now Boeing).
.
My answer Peet's, Starbucks, grind it in a burr grinder then put it in my french press; in no particular order.
Yes an EE with some software background or electives gives you what you need for CS. One could also do a Computer Engineering degree with with software electives.
I'm a hardware guy, but know quite a bit about software.
Designing a great piece of hardware means nothing if the software guys can't make it do what it's capable of.
On interviewing.
I like to go through the resume and pick topics that they say they know, that I actually do know.
You find out who has done the stuff or just using buzzwords.
If it's on the resume, it's fair game.
If you don't know it, don't put it down.
Yeah, I've been in management multiple times.
I've been told by people "if you ever go into management, you can't go back technical".
All I can say to that is, if you are good at what you do, going back and forth is no issue. Been there, done that. Was in management recently and just moved back to being technical.
But the bottom line for the OP is, get a degree, CS, CE, EE whatever.
It demonstrates that you know how to think and that you have the testicular fortitude to get something difficult done.
Above all, you can't call yourself a real scientist or engineer unless you understand the principles. You can either get most of them through coursework or working for good engineers for some period of time.Comment
-
There is a current topic on SW Engineer interviews on this Bay Area Software Engineers LinkedIn group:
Comment
-
Great points - we always stuck to the resume, and yes, the coffee answer was just what we wanted - an ice breaker. I was never sold on that idea, but I did it.That's funny about the coffee.
My answer Peet's, Starbucks, grind it in a burr grinder then put it in my french press; in no particular order.
Yes an EE with some software background or electives gives you what you need for CS. One could also do a Computer Engineering degree with with software electives.
I'm a hardware guy, but know quite a bit about software.
Designing a great piece of hardware means nothing if the software guys can't make it do what it's capable of.
On interviewing.
I like to go through the resume and pick topics that they say they know, that I actually do know.
You find out who has done the stuff or just using buzzwords.
If it's on the resume, it's fair game.
If you don't know it, don't put it down.
Yeah, I've been in management multiple times.
I've been told by people "if you ever go into management, you can't go back technical".
All I can say to that is, if you are good at what you do, going back and forth is no issue. Been there, done that. Was in management recently and just moved back to being technical.
But the bottom line for the OP is, get a degree, CS, CE, EE whatever.
It demonstrates that you know how to think and that you have the testicular fortitude to get something difficult done.
Above all, you can't call yourself a real scientist or engineer unless you understand the principles. You can either get most of them through coursework or working for good engineers for some period of time.
To clarify, I have CS guys who are as good as anybody, but I thought about it and the EE's get math, physics, CS, and of course EE. Which makes them better at embedded coding than most.
But I tell you - I am worried. I went to two embedded 'conferences' recently and the guys were ALL OLDER THAN I WAS. Holy carp.
What is going on here?
OP is a Vet, and in my experience, they are the most likely to succeed in college. (I am not a Vet, but as a farm kid - back then, I had the fear of re-doing a class, which costs $$). The veterans who were technicians were extremely comfortable and confident. I befriended many of them. Undergrad and to some extent Grad studies.
OP - you are on the road to success. BTW - artificial intelligence has been done and in the classic sense does not work. I took the courses.
But the games my son plays - written in whatever language - is much better than the crappy LISP programs that were to be the future.
AI - real AI - does not exist at least in the context I was taught. A computer for solving chess is not AI - it's a selection of all existing moves - brute force, trimming down the lower probability moves.
We'll see what we can see. But I code firmware to act like I would act in that situation, and I guess that is a form of AI. Or just I.
One differnce I learned is to assume every step in the code fails - something doesn't turn on, or whatever. Write that code first. THEN write the code that handles the postivie case. It's so much harder to handle the fail case, that you'll NEVER DO IT.
A lot of guys don't even write the fail case. It's sad.
And I have learned over the long haul that I need to write a quick and dirty Windows tool to exercise my devices. Usualy not pretty code, but I don't care, I send the software guys my code and it's up to them to make it pretty or efficient or within their guidelines.
The sweet thing about this is if their code won't work, I run my MFC/dufas app, and it DOES work. I have saved thousands of manhours arguing by doing this. Cause EVERYBODY blames the hardware..
.Comment
-
SW != Engineer.There is a current topic on SW Engineer interviews on this Bay Area Software Engineers LinkedIn group:
https://www.linkedin.com/groupItem?v...er&gid=2025093Comment
Calguns.net Statistics
Collapse
Topics: 1,865,755
Posts: 25,134,725
Members: 355,945
Active Members: 3,888
Welcome to our newest member, glocksource.
What's Going On
Collapse
There are currently 6009 users online. 126 members and 5883 guests.
Most users ever online was 239,041 at 10:39 PM on 02-14-2026.


Comment