|
Mike Mullikin wrote: Personally, I'd move #4 & #5 into a tie above the current #3 but that's just me...
Dare I ask why?
What type of Development do you do? At what level?
(I am not saying you are wrong, I am trying to understand your value system/skill set,
such that IF I run into someone similar I might be inclined to point them towards your
style/type of development).
For the record, using various tools (for me) is about Analyzing/Testing/Sifting through data.
It aids in the decision making process/analysis and potentially communications...
I appreciate the feedback!
|
|
|
|
|
Kirk 10389821 wrote: What type of Development do you do? At what level? Semi-retired when it comes to actual coding these days. A few years back it was C++ with MFC. As for level... I have to admit my pure knowledge of the language and framework was average at best. However, I excelled on your trait #1 (Analysis Skills (Breaking Down and Understand problems) as well as debugging and communication skills. IMHO the communication skills are important not only to express ideas but to truly understand specifications, user complaints, exhibited behaviors, etc...
I work for a machine tool manufacturer doing industrial machine controls - mostly CNC and PLC based.
Also, my opinion is that #3 (Skills using Tools (Excel, grep, etc)) can more easily be learned than the other items so they are of less value in the rankings.
Contrary to popular belief, nobody owes you anything.
|
|
|
|
|
Perfect. That is what I needed to understand.
See, there are developers who NEVER SEE or talk to the users/customers/consumers.
Then there are those that LIVE and DIE with the users. In your case, you can't
even start CNC work without some kind of interaction. Either with a physical part,
or a specific example of a situation.
This is important stuff. It goes back to WHY I am asking the questions. To me,
the perfect job is a GOOD fit between what you enjoy, and what you MUST do. I enjoy
all of the steps. Lately, I enjoy the communication side a bit more than the coding.
Partly because I have developers who work for me, and almost NEVER meet the customers.
They work with them via email, and it takes a while to setup. But I have resources
I can throw the coding to, with enough explanation that it usually gets done quite well...
I will try to post back what I have gleaned from all of the feedback...
Thanks...
Kirk Out!
|
|
|
|
|
Kirk 10389821 wrote: a severe introvert can easily be a developer, but will have issues with the last
two items. No I don't.
Kirk 10389821 wrote: as I am an older programmer who is talking to more young kids about careers in
software development. Tell them to question everything. If we had accepted that 640k is enough for everyone, we probably would not be posting here now.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
Eddy Vluggen wrote: Tell them to question everything.
I 100% agree. However, some programmers have given this skill a bad reputation by doing it rudely.
Question everything, but you must stay positive as you do it.
Also, some places of work just are not open to questioning. "Quit rockin' the boat, programmer!"
Those are the places that you should plan on leaving as soon as possible.
|
|
|
|
|
newton.saber wrote: However, some programmers have given this skill a bad reputation by doing it
rudely. I am not your most tactfull person. Some rude persons used the technique too often - you should not criticize everything, but question it. Research it, find out why things are how they are, what alternatives there are, what their merits are..
newton.saber wrote: but you must stay positive as you do it. A turd gets called a turd, as it is the professional thing to do.
Being positive is the realm of salesman and marketeers. We deal with the real world.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
And I argue that Questioning the "givens" and Researching them...
Amount to ANALYSIS Skills.
Presenting them, and working with others are covered as well...
But this is EXACTLY why this is important stuff.
Architects Need more finesse in my experience, because they are dealing with Higher Level Management.
People who stop writing checks when they feel insulted, LOL. So if you like the check, you ask innocent sounding questions that lead them to better pastures
But I am appreciating all the feedback.
|
|
|
|
|
Kirk 10389821 wrote: People who stop writing checks when they feel insulted, LOL That is personal experience.
Mine varies.
Kirk 10389821 wrote: So if you like the check Been liking it for quite some time. How about you?
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
|
|
|
|
|
I like the checks, but honestly... I would probably do this for free if I didnt have to work for a living!
Unfortunately I've grown accustomed to 2 things;
- Living Indoors
- Food
|
|
|
|
|
Kirk 10389821 wrote: Are there any other skills. Debugging. Many QA questions would be solved more quickly if the person asking knew how to debug.
There are only 10 types of people in the world, those who understand binary and those who don't.
|
|
|
|
|
Amen on the debugging! It's the most fun part of the job anyway!
"Go forth into the source" - Neal Morse
|
|
|
|
|
Hmm,
I have to agree... That needs to make it in there.
But in our world we tend to encourage setting breakpoints on all new code blocks...
So I missed it.
Good Catch. Thinking it is a recursively applied skill to the first 2 items
(Analyzing your code, and Coding) Probably will update to say Programming/Debugging/Testing
Excellent!
|
|
|
|
|
Kirk 10389821 wrote: Programming/Debugging/Testing Ya, that works.
I just know there are many people in QA who post code, simple code even, and then say "it doesn't work" and they "test" it over and over and don't know how to do simple debugging.
There are only 10 types of people in the world, those who understand binary and those who don't.
|
|
|
|
|
#0 A passion for solving puzzles.
If you're easily distracted or get frustrated when stumped, software engineering is not the field for you. Unlike many other fields, a career in software engineering will require you to almost continuously face new problems and challenges. Unless you're seeking a career where you build almost exactly the same thing year after year. But that would make you a programmer, not a software developer IMHO.
/ravi
|
|
|
|
|
|
...and a thick skull.
cheers
Chris Maunder
|
|
|
|
|
#0.0, Communication skills
I put this as a primary as side from the other. No matter what you know, if you have poor communication ("poor" in a sense being rude/arrogant/know it all ...), you work alone and probably you may be left as the last(only) person of the software as a user
The rest comes as you build your experience.
Wonde Tadesse
|
|
|
|
|
As a manager of developers, you can't hire someone who has ZERO communication skills.
So, having a pulse, knowing how to program, and getting through the interview.
But communications is a skill that a few of the best programmers I have ever met,
have yet to come close to mastering... And frankly, considering their skills, I would
rather they work on what they truly enjoy... I will communicate with them.
Again, it gets to the point of the type of work, and the environment. If you never
see/talk to the client or anyone other than your boss, it can't be the most important skill.
As you desire to get closer to the customer, I think the whole list inverts a bit.
Communication becomes job one, Working with others, etc.
Also, introverts are attracted to this career, and I think that is a good thing.
You can make a good living without being a "face" person. My old buddy said it best.
How do you respond to someone when there are about 18 different replies, and you
don't know how each reply is going to make that person feel, which affects how they
receive the answer. (He wasn't kidding. He was that smart. Being that smart made
him socially awkward. Great coder, though).
|
|
|
|
|
Communication skill is not in a sense of speaking, but in a sense to interacting with team/devs. Can (s)he fits with my existing team ... Off course there is going to be a communication but if its unpleasant, either you'll lose what you have(other devs) or you end up firing him or as I said it before[^]. Mind you (s)he may be a top notch coder/dev.
NOTE : It may be hard to determine in hiring process though.
Wonde Tadesse
|
|
|
|
|
So,
0) Not a complete moron when communicating
That's interesting. Putting it before everything else.
But it identifies a situation.
Communication Can be broken down:
A) Through Code/Comments ... Which we must all do
B) To Other Programmers/Managers... Which I guess I was assuming, but stating it is better
C) To Other Types of Techs (Tech Writers, Testers, QA People, HelpDesk, etc)
D) Then what I would call "Business Communication" for brevity...
Interesting. This gives me a second dimension to communication.
And it reminds me:
Ability to follow directions (with Knowing when/how to raise an issue about directions)
I think that should wrap up the core.
Again, the point is to show that as your interest in varying items expands or shrinks,
it could be used to drive you towards a more fulfilling career.
Joking:
- Hate People, Love Technology = Network Engineer
- Hate People, Hate Technology = My last 3 bosses
- Love People, Hate Technology = Sales
- Love People, Love Technology = Blog Writer <grin>
|
|
|
|
|
Kirk 10389821 wrote: But communications is a skill that a few of the best programmers I have ever met,
have yet to come close to mastering
It is a matrix (programmer versus communication) which is, of course, based on a normal curve
And there will be some that do fall outside of communication but could program. A good manager might be able to overcome that but a good manager can overcome many things. But, again, managers are dependent on the normal curve as well and consequently most are not good but just adequate.
|
|
|
|
|
0. A sense of humility, which lets them know that, even though they're the smartest person on the planet, lots of other people are also the smartest person on the planet.
None of those are marketing people, though. Smart people know that lying is not a smart thing to do.
I wanna be a eunuchs developer! Pass me a bread knife!
|
|
|
|
|
Kirk 10389821 wrote: a severe introvert can easily be a developer, but will have issues with the last two items
It a developer cannot be communicated with then they cannot be a developer. Can't be good developer. Can't be a bad one. Can't be one at all.
And if a good developer suffers severely from communication skills then unless they are paired with someone that has excellent management skills (presuming patience, good communications, etc) then they will perform badly regardless.
Kirk 10389821 wrote: Are there any other skills..
Delivers assigned work in a reasonable period of time with a reasonable level of quality without unduly antagonizing other employees and most certainly not employees.
So for example even if a developer has incredible skills if he/she keeps cussing out customers or starts bringing guns to work and muttering then get rid of them. Immediately.
|
|
|
|
|
Oaky, lets make sure we start with the basics that we are looking at either NORMAL people, or the typical geeks and core techie types.
And the other stuff about deliverables... And reasonable. One companies reasonable is another companies absurd.
Keep in mind, these are the skills younger people may have, and are deciding if they may do well at Development. And then what types.
Never hire a psychotic... Especially as a software developer or a camp counselor
Give them jobs in government where they belong ))
|
|
|
|
|
Kirk 10389821 wrote: 4) A desire to learn new things
Need to emphasize this, since I see some freshers with the "I know it all" attitude. That may be OK, but some of them exhibit the "You know nothing"/"Are you an idiot?" attitude too!
Another thing, mostly attitude-related is - the willingness to seek, accept and work on solutions from/with others, aka, teamwork.
modified 20-Feb-15 23:45pm.
|
|
|
|
|