I usually plan to talk about 3 things, in equal 10 minute proportions:
- Past
- Present
- Future
Past
Generally this is things that have been brought up before that have had resolutions. ie.
- We had discussed, as a team, the new coding standard and I’m happy/unhappy with its adoption.
- I liked/disliked how you handled the issue that came up between myself and [other team member]
Also mention things that were forgotten, or whose solutions never materialized. Don’t let them forget about things that are/were important to you.
Present
Here I talk about any current things that are going on, or should be. ie:
- As you know, I’m studying to get my [certification in x] and it’s going well. I am on target to take the exam.
- I’m a bit worried with the current test coverage being at %[x]. I have some ideas to help improve it and would like to hear if you think it’s a problem and have ideas of your own.
- At this point were supposed to be ramping up for release, but we’re not. What happened and what do you think we can do about it for our next iteration? I have some ideas.
Future
Here I list things that I’m looking forward to, and ensure that they are still going to happen or things that I’d like to see happen. ie:
- I’m really excited to be getting VS 2010, when is it expected? Has that time changed (if not: why)?
- I’m up for review in a few months. Do you have any concerns that I might address right away that might make that process go smoother, and in my favour?
- I’d like to see if I can move into [x] position in the company. Do you have any feedback or suggestions for what courses I should take or what I might do to prove that I’m capable?
The focus is on contributing to the conversation, on both sides and not just bitching about the job. Be sure to mention things that you were happy with, so that they can know to strive for the same in the future. Note that it’s not just about what you can do to improve the job/working environment/company but what the company can or is planning to do to improve the same.