Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Job Review

FortKnox (169099) writes | more than 10 years ago

User Journal 24

I got my yearly review back today (I had to fill it out myself, and so did everyone that worked with me the past year, including clients... total list was around 30 people).
I hate these things... I gloss over the 'good comments' to read the 'constructive criticism' comments. The two 'major' hits (5 is excellent, 4 is good, 3 is 'fair') where 3.8 and 3.6. The 3.8 was for too much surfing... probably deserved and something I can work on... but the 3.6 was someone who took over my code whenI got my yearly review back today (I had to fill it out myself, and so did everyone that worked with me the past year, including clients... total list was around 30 people).
I hate these things... I gloss over the 'good comments' to read the 'constructive criticism' comments. The two 'major' hits (5 is excellent, 4 is good, 3 is 'fair') where 3.8 and 3.6. The 3.8 was for too much surfing... probably deserved and something I can work on... but the 3.6 was someone who took over my code when I switched assignment. One of my 'major' pages was 'so convoluted and not OO/reusable enough I simply rewrote it.' I know who made the comment... a 50+ year old developer that is ULTRA anal about code and OOP. Regardless.... someone feeling the need to rewrite an entire page of code really hits me the wrong way. I had a lot of 'should test his code better' which is something I learned over the years and picked up JUnit for that very purpose. He also called me a junior to mid level developer that grasps the front end applications but needs to work more on the business/persistance layer. Eh, nothing like being belittled on a review. My reviewer qualified the statement by saying I was a junior developer the previous year to many of the senior and principle level consultants, so they may now expect more than I'm capable of (basically, there level of coding), but, damnit, that qualifier made me feel even worse. That assignment that had to be 'rewriten' was a 2 month 'drop' for me with a completely new framework I was unaccustomed to and had no real standards... man, I thought I took constructive criticism well....

Blargh, I have a feeling my stomach isn't gonna like this tonight.......

cancel ×

24 comments

Sorry! There are no comments related to the filter you selected.

Booze (1)

Blackneto (516458) | more than 10 years ago | (#9279368)

thats what you need.

Re:Booze (1)

FortKnox (169099) | more than 10 years ago | (#9279469)

I'm too much of a forward thinker... booze will make me sick and won't change a damn thing, unfortunately.

Re:Booze (1)

Blackneto (516458) | more than 10 years ago | (#9279560)

murder?

Re:Booze (1)

FortKnox (169099) | more than 10 years ago | (#9279643)

Now you're talkin! Need to call the family....

Re:Booze (1)

TechnoLust (528463) | more than 10 years ago | (#9279711)

That's RIGHT! You're Italian. Check your email, RE: Boo's parents. ;-)

Re:Booze (1)

Abm0raz (668337) | more than 10 years ago | (#9279968)

Nah, proper usage of booze will help. The key is to stay away from the heavier stuff. Avoid wine, shots, and mixed drinks. Go straight to beer, and a lot of it over a long period of time. Preferably with friends who will drink with you. Try to prolong the slight to medium drunkeness rather than get very drunk fast. By the time the night's over, you'll've had too much fun to remember your review.

-Ab (who had his review 3 weeks ago and would rather not talk about it)

humm (1)

robi2106 (464558) | more than 10 years ago | (#9279556)

I can understand what programers run into when working on others code. There is the "tab" verses "two spaces" argument for nested expression indenting. Then how to do format and styalize the code.

Some people are too fixed in their way that if they work on code that does not fit their personal formatting preference, they freak out. If they spend a lot of time fixing non-functional formatting (does the begining brace go at the end of the line for the conditional statement, or is it the line below, if below, is it indented with the code, or at the level of the conditional statement?). These sort of things can make someone that is set in their ways unable to work, even if the code is perfectly usable and commented.

I do understand your feelings though. I have had similar experiences on unofficial feedback for some of my code.

jason

Re:humm (1)

Abm0raz (668337) | more than 10 years ago | (#9280045)

3 spaces for all intenting

Brace goes at the end of the line to start a logical grouping

Functions are in the format of FirstSecondThird

Variables are in the format of typeFirstSecondThird

Constants are in the format of FIRST_SECOND_THIRD

Variables that are 3 letters or less are placeholding counters, looping values, or temporary storage while manipulating data only.

Comments belong at the beginning of a file and/or logical programming block only. Comments in the middle of code flow or on the same line serves only to confuse.

Exception being for debugging lines, which should ALWAYS have a "// DEBUG - reason" at the end of the line for easy search and removal.

-Ab (usrCodeNazi)

Re:humm (1)

FortKnox (169099) | more than 10 years ago | (#9280151)

3 spaces for all intenting

No, 3 spaces for all indenting ;-)

Brace goes at the end of the line to start a logical grouping

Sorry, braces belong on their own line for cleanliness.

Functions are in the format of FirstSecondThird

No, classes are FirstSecondThird, methods in the class are firstSecondThird.

Variables are in the format of typeFirstSecondThird

Agreed

Constants are in the format of FIRST_SECOND_THIRD

As are static final variables (basically another name for globals)

Variables that are 3 letters or less are placeholding counters, looping values, or temporary storage while manipulating data only.

Only valid examples are for for loops (int i, j, k, or whatever else) and 'tmp' under very strict standards.

Comments belong at the beginning of a file and/or logical programming block only. Comments in the middle of code flow or on the same line serves only to confuse.

Comment blocks (/* */) belong at the beginning of a class (file), each method, and in wierd circumstances fields. If you need a block comment inside your code, you need to extract the lines in question into a private method to explain with the block comment (good rule of thumb).

Exception being for debugging lines, which should ALWAYS have a "// DEBUG - reason" at the end of the line for easy search and removal.

I prefer "// TODO JPM - " because eclipse picks up the "TODO" in comments and puts them in the 'tasks' box, so its easy to find and I know which ones are mine.

I also like to pad the INSIDES of parens:
for( Iterator listIter = list.iterator(); listIter.hasNext(); )

Remember that guy that gave me the bad review? He was the lead coder on my very first java assignment. That's were I got anal about my coding... which is why I'm upset that he thought it was so messy.

(And you thought you were bad) ;-)

Re:humm (1)

Abm0raz (668337) | more than 10 years ago | (#9280331)

Sorry, braces belong on their own line for cleanliness.

Well, I program mostly in VBasic, so this is moot, though I did put my examples in a more universal format, rather than VB :)

No, classes are FirstSecondThird, methods in the class are firstSecondThird.

See previous comment. All I have a Functions and Subs (subroutines or null returning functions).

Only valid examples are for for loops (int i, j, k, or whatever else) and 'tmp' under very strict standards.

'cnt' for counting (very useful when using VBA scripts to pull out numbers of things in a raw data file). 'key' for token matching in parsing. and 'tmp' for temporary holding, such as switching variables (tmp = a, a = b, b = tmp) or trimming out useless parts of a string when parsing to save time and/or not modfify the original string. (too long to give an example)

Oh, and I forgot one:
Variables definitions (type casting) get indented and are 1 blank line below the block comments for the function/method/sub/class they are in followed by 2 blank lines before the actual code starts.

-Ab

Re:humm (1)

M.C. Hampster (541262) | more than 10 years ago | (#9280813)


No, classes are FirstSecondThird, methods in the class are firstSecondThird.

This is the one Java naming standard that drives me absolutely nuts. I don't know why. Yes, for fields, local variables, and parameters camel case looks just fine. But for methods? Ick. Totally ick.

Well, could be worse... (1)

GeckoFood (585211) | more than 10 years ago | (#9279596)

A buddy of mine at my last employer did not get a 6-mo review and received no direction from his manager until his annual. There, at his annual, his manager blasted him for countless stuff that by buddy was not even aware had been a problem (and most people would not consider a problem anyway). He went from a respected developer to a puke on probation in one hour, all for stuff his manager should have addressed before his annual review (and much of it was dumb stuff like stylistic issues in coding). So now, he has 90 days to fix everything or join the ranks of the unemployed.

He went to HR and filed a complaint. It fell on deaf ears. Said employer also makes everyone sign arbitration aggreements as condition for employment, so his hands are tied.

Geez, I'm glad I don't work there anymore...

Sorry, dude. (1)

SamTheButcher (574069) | more than 10 years ago | (#9279634)

That totally sucks. I got a review for my one year last November and...nothing's come of it. No raise, no nothing. Which feels pretty bad, too.

Re:Sorry, dude. (1)

subgeek (263292) | more than 10 years ago | (#9280646)

we had our reviews last october. they delayed raises. they told us a couple weeks ago that raises resulting from last october's reviews will go into effect 2 aug. at least i know i did ok in my review, but i don't know what my pay increase will be.

i've got to get out of here.

Guilt & Glory (1)

bethanie (675210) | more than 10 years ago | (#9279637)

First of all FK, go back and read through the positive comments, please. People really do go to a lot of effort to think of those, and it's not just to stroke your ego (what would be the point if it's anonymous?). Spend some time considering the good stuff, OK?

Second, I must share a moment of my own history when I composed a review of my supervisor -- the psycho hosebeast from hell. She was horrible. She was extremely intelligent, very driven, entirely compulsive, and slightly mentally unstable. And completely incapable of letting things come to closure or praising others for a job well done (me in particular).

People *hated* working with her -- she was the kind of person who could never just give a simple answer. Very busy people would try to get one out of her, and find them sucked into a series of hours-long meetings to analyze and probe their data needs. It really fucked up people's budgets, because they'd come to us (the research department) with a set of questions they needed answers to and a finite number of billable hours budgeted, and she could NOT just do the job and stop when it was done.

And I detailed this on her review. Painfully. Excrutiatingly. It was *so* cathartic for me, because I could never say anything to her face-to-face (I already mentioned the mental instability).

And it made her cry. She read me quotes over the phone. It alleviated a bit of my guilt that some of them weren't mine -- so I know I wasn't the only one being critical. But it must have been really hard for her.

I think she started seeing a shrink after that, and getting more exercise. Lord knows she needed to do *something* to get away from work for a while.

And that's my story of the worst review I ever gave someone. I think in the long run, it had a mostly good effect.

Again, FK, read the good stuff. People mean it.

....Bethanie....

You know what sucks worse? (1)

TechnoLust (528463) | more than 10 years ago | (#9279760)

What sucks worse is when you manager calls you in and says, "I sent your review up as a level 2 employee [1 being Walks on Water, 3 being Meeting Our Expectaions, 5 being Fired] and they sent it back and told me to make it a 3 because there are so many 2s it doesn't fit the bell curve. So, I'm docking you on Interpersonal Communication."
And then I say, "But I'm a great communicator, I can talk to everyone from the CEO to the janitor!"
And she says, "I know, but they told me I had to change it and I don't want to knock you on anything else."
"This sucks."
"I agree."

Yes, this actually happened to me.

Re:You know what sucks worse? (1)

Some Woman (250267) | more than 10 years ago | (#9280103)

Maybe something's wrong with their expectations. Or maybe they should realize that they don't want their employee performance to fit a bell curve. At least I wouldn't, but what do I know?

Re:You know what sucks worse? (1)

TechnoLust (528463) | more than 10 years ago | (#9280455)

Well see the problem is that they decide on raises BEFORE they do performance evaluations. And since our raise is performance based, my raise was not in the range of a 2, so I had to be downgraded to a 3 to justify my raise. This issue came up on the Corp. survey and I was on the focus team to change this. We just presented our case to the big guys, so either things will change, or next year I'll be a 5. :-)

My friend is an EE and he does sales and engineering for our modified product unit. His manager took a promotion and they didn't replace him for 6 months. The new manager came just in time for reviews. The new manager gave him a 3. he said, "But we increased sales 66%, and we didn't have a manager for 6 months!" The new managers response was, "Yeah, but the goal was 100% increase and you didn't acheive it. You're lucky you didn't get a 4."

You have SO MUCH to look forward to now that you are leaving college and joining corp. America. ;-)

Re:You know what sucks worse? (1)

FortKnox (169099) | more than 10 years ago | (#9280699)

And that right there is why i enjoy working for a small (100 person) consulting firm instead of a large fortune-500 company.

Re:You know what sucks worse? (1)

TechnoLust (528463) | more than 10 years ago | (#9281442)

Trust me, if I could make the smae money and benefits at a smaller company, I would do it. I may do it anyway if they keep this up. ;-)

Re:You know what sucks worse? (1)

Safety Cap (253500) | more than 10 years ago | (#9283142)

Well see the problem is that they decide on raises BEFORE they do performance evaluations.
And what is scary is that this is the way things are done at EVERY SINGLE large company I've ever worked for.

When I finally get up the nerve to start my own corp, these stupid-a$$ evals are going in the trash, where they belong. I believe in setting goals and then reviewing. Did you meet your goals last year? Yes=raise; partially=smaller raise + coaching/training/reevalutaion; no=???. That way you know what you're going to get without a lot of guessing. No chance of getting stabbed in the back by a toxic co-worker. Blah, blah.

Re:You know what sucks worse? (1)

TechnoLust (528463) | more than 10 years ago | (#9283528)

We're on a new online goal system now that is supposed to change all that. I guess we'll see next year. The bad thing next year will be that I now report to 2 people. The Plant Manager and the division IT Manager. So I have two sets of goals (that may or may not conflict) to deal with now. joy.

My Code Review (1)

ellem (147712) | more than 10 years ago | (#9288118)

ths is going back a few years and I am not a developer/programmer I am a Sys Admin/Security guy.

I script and write in Perl, that's it, ever.

"His code is boring."
"His code is obvious."
"His code is dull."
"His code is 'safe'."
"He comments too much."
"His Perl is too C-like." (I had no idea what that really meant at the time.)
"He over uses warnings and strict."
"He uses diagnostics too much."
"His code is too long." (i.e. no golf)

I still code exactly the same way. I write once a month, sometimes less. I have to be very careful with what I write and I have to comment it, sometimes I can't remember why I did something.

But...

When reviewing a Jr Admin recently I was thinking similar thoughts. I did not put them to paper b/c I knew that ultimately he was right to work in his level. But I did THINK them.

Is it possible you will feel the same way someday as your 50+ y/o nemesis?

Some general advice ... (1)

alien_blueprint (681111) | more than 9 years ago | (#9313244)

... completely unasked for. I was just reading your journal after replying to you on binder's regex problem.

I didn't know which JE to reply to, the "Depression" one or this one, but I chose this one as I believe my thoughts on this process may help, and thereby indirectly affect the mood thing. Maybe.

Keep in mind that reducing your performance to a number is a ridiculous idea. They measure what they want, and ignore the rest, and put it all on some bizarro-world scale that makes no sense. Example: in my experience technical items, or even actual real revenue-making business items, are weighted the same as items like "made people feel good about themselves" or whatever. You could literally triple the revenue of a company, or even save the company's existence - and all that could be wiped out because you held someone responsible for their mistake one time, or brushed off an annoying clown without being sensitive enough, or whatever.

First, you need to figure out why you care exactly. Let's assume you want a promotion, and supposedly the way to do it is to score X on the review. Unfortunately for that thinking, the only measure that matters is the bottom line one - is it profitable or not to have you around? That's it. If you are in the black, so to speak, and (importantly!) you can demonstrate that effectively to decision makers then promotions, pay raises - whatever you think you're missing out on - will come regardless of what that stupid yearly number is. Sure, it will piss off the people who got a "higher" yearly fictional number, but that's just reality conflicting with the employees' shared illusion (delusion?) that they can use anything other than profit to measure success. Think about this - how many times have people been awarded the magic number to be promoted, be given a pay raise, an overseas assignment, whatever, and then *not* gotten it? Almost every time, in my experience. They just get fobbed off. They are, quite simply, running in the wrong race. If you're simply profitable and therefore good for business, management will want to hang on to you, and everything else will come naturally. What then happens is (and I speak from personal experience) management will just make sure you get the "right" numbers if they want to give you the reward. But most technical people don't see it, or don't want to - they *prefer* instead the game of "scoring a high review number", because it's a bit like a D&D "stat" I suppose, and never seem to realize that it won't make a blind bit of difference to anything. And the alternative, thinking in terms of the business and projecting their achievements in that frame of reference, is just too awful for most as well. They'd rather talk about "lines of code", or "OOP", or something. So they revert to a blind faith in the fictional rating system, even when they know, deep down, it doesn't measure or affect reality.

Now that the obvious reason is out of the way, the other one is that you're using this as actual feedback. The first thing to realize is that you are worried about scores of 3.8 and 3.6. Then you say that 3 is "fair". What's wrong with that? We can't all be perfect, and in fact no one is. Perhaps this isn't you, but I noticed during the dotcom boom people didn't just expect inflated pay - they expected inflated review scores (highest scores possible across the board), and no criticism ever, or they would start talking loudly about bailing out. Anyway, for whatever reason, your expectations are way too high - if fair is "average" do you really, really expect to be above average in every category every time, always? Will *every* interaction with co-workers result in an above-average result for all? I sure don't expect that, and some would say *I've* got a high opinion of myself :) If everyone is getting "above average" in everything, then something's wrong with the review system. Perhaps it's as simple as recalibrating the scores, or perhaps the system is broken, or suffering from score inflation, but it's simply impossible for everyone to be above average in a company all the time.

So, let's ignore the scores as such. First, you should look at the positive comments. It's natural to focus on the negative, but you should keep them in perspective. Weigh them up - how many of these negative comments are there and how major are they anyhow?

Having said that, I want to (gently) put it to you that the reason you might feel bad about the negative comments is usually that they are in fact true. I know this myself - if a criticism is just nonsense I dismiss it *instantly*. The ones that irritate me are those that have, when I take a good look at myself, at least some basis in fact - the worst kind. The thing to remember is that, particularly in computing, people just aren't good at communicating criticism in a sensitive way. They probably didn't even mean to upset and annoy, just to communicate a problem area. Look at it like this - those people took the time to define their problem with your work. No-one does that unless 1) they think you can improve, or 2) are just sniping. The bitter snipers you can ignore safely, they'll reap what they're sewing in the long run, but I would really try to put aside the way these comments made you feel (engineers aren't good at protecting egos, you have to get used to it), and think about whether there really are problems in those areas - and most importantly what you can do in practical terms to address them. If you don't understand the negative comment, then you really ought to find out what it's referring to - it might actually be important, but was just not expressed well. In either case, actually taking steps to address the problems will make you feel better instantly (and not to mention make you a better developer!).

I've found time and again that the harshest critics end up being the best tutors. It's almost like they're doing this deliberately to filter out the chaff :) Those comments, as you've paraphrased them, sound to me like someone who's giving you pretty sound advice and most importantly actually wants to see you improve. They wouldn't say these things so precisely otherwise - it would be just "he's a timewasting joke, don't make me work with that clown again!" So the fact that crusty old coders don't mince their words works *for* you in this case - if he thought you were a hopeless case, you'd know it.

Finally, you're worried about this way too much (that is - at all). I know what it's like, I fretted over my GPA at university like it was something actually important to a truly frightening degree. You got an excellent result from what I can see, and some actual useful feedback. What do you want?! Now go and take some of those other people's good advice, and have some fun over the next few days doing something else that you enjoy!

Sincerely, I hope that does help a bit.

Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>