I've recently been promoted to Director of IT, and have the responsibility of creating a bonus plan for my employees. The company owner has laid out some criteria:
* Bonuses are only paid out in months when the company is profitable
* Bonuses should be based on an objective measurement and not on subjective perceptions
* The measurement should be based on the employee's individual performance
But I'm stuck because I can't quite figure out the objectives by which to measure my (so far) sole employee.
I don't want to base it on the number of bugs fixed, because that means the bonus will decline as the products (two websites) improve, and it will also decline if bugs go undiscovered (and therefore, unfixed).
I don't want to base it on the number of paying subscribers because this particular employee's work is mostly unrelated, or only peripherally related, to the subscriber count.
Basing it on the number of programming tasks completed is problematic because that can be subjective, dependent on how one defines "complete". The owner doesn't like subjective.
How do you measure programmer performance? What criteria do you use in your work to determine bonuses?
You mean "average" performance. Well, there's no agreement on that one yet, but most of us agree that measuring LOC/day isn't a very valuable metric.
I'd recommend it though if I was on your team; copy/pasting a lot of comments would surely get me that bonus
See, there's the problem with metrics - if you start taking things like the amount of bugs solved, you'll get a lot of bugs solved, just not the ones that the customer really needs. People will game the system.
I've seen lot of experienced developers bite on hard stuff with little progress. I've also seen people who were merely "faking it". It may take a while for an outsider to distinguish both.
I also do not see how a bonus makes programmers write better stuff. Training does that.
Bastard Programmer from Hell
If you can't read my code, try converting it here[^]
Communication skills have nothing to do with programming. It is about how you give information to otheres and how you receive information from them. Training in communication skills is a fairly specific subject and you should research courses available in your local area.
Very poor communication skils also puts you in difficult situation. But it is not true always. One must be good at both communication as well s technical skills.
Yes, especially as you are into requirements gathering then you must have to understand their business perspective. Especially when you speak with foreign clients, you must able to understand their accent and also business terms.
Try to read more articles on requirement gathering or else read about requirements of specific product what you are dealing now. This is atleast give you a rough idea of what needs to be done and also helps you to get a quick idea if clients speaks any of the words that you read.
And don't worry much about it. Its just a part of work life
I'm in a very unfortunate situation, and I'm hoping to hear some concrete advice to help me choose a direction for my programming career. Here's a summary of where I am in life: I just finished a Computer Science degree at a small college in my small hometown. My parents were very unsuccessful in life, and can't offer me real-world advice besides "Get any job you can!" I managed to graduate without retaining much information, and I completely failed to prepare for my life ahead. Now that I'm out of school, I can clearly see how unprepared I am for working with people in a corporate environment. I'm also very reluctant to move somewhere else to find work because 1) I basically already own my own small dream home in a decent neighborhood, and 2) my mother is getting old and won't be able to support herself much longer. She doesn't have any retirement savings, and I'm the only one left in her life to support her.
So, now I'm trying to grow up real fast and make some responsible decisions. I feel like my only hope is to find a way to make money remotely online. I would love to do freelance work, but I can't afford to travel to meet with clients, and I'm afraid I won't understand the projects I'm lucky enough to get.
Alternatively, I'm considering developing my own software/apps and marketing them myself. I'm creative enough to design novel and useful software, and I'm not afraid to handle the marketing and business aspects, but I don't know what "running a business" really involves.
I want to make it clear that I'm not looking for an easy way out. And I don't need to make loads of money to maintain my lifestyle. We've been supporting ourselves on minimum wage income for years. I'm just looking for a feasible plan to support a modest life without risking poverty.
I would welcome any realistic ideas/perspectives about my situation, or a better website to post my questions.
I'm a recruiter for a global translation company and have some tough positions to fill. Recent applicants have been under-qualified. I'm proactively looking for people and sourcing resumes. Besides the traditional craigslist, indeed, monster, dice, etc - what other sites are popular for the tech community to look on when looking for a new job? I like strong tech community sites like stackoverflow, for example, because the people who frequent those sites are usually constant learners vs posting on craigslist and having a less passionate candidate apply.
To get an idea of our needs, example of positions are "localization engineering manager", "OneLink Website Engineer", "IT Server Engineer", ".NET Developer", "Application Developer", "Junior Software Developer"
What would your advise be on perusing a form of agile certification at this point? My main points of concern are whether the knowledge base and methodology has matured enough for the courses to provide value, whether the market has developed an appreciation for certified agile professionals (ROI)?
Naturally if you motivate for certification it would also be nice to know which body you can vouch for.
The only reason to go for certification in any subject is to help you progress in your career. The first thing you need to research is how many businesses are asking for this qualification in their job requirements.
So you have a certificate as an "Agile ..." - how much work experience do you then have with this or that technique / role in an Agile Team?
Depends on the employer: some might prefer certificates over experience, others might do it the other way round (and I'd prefer the latter style!).
Some certificates may provide a different kind of value: they make sure that people of different teams use the same "language", i.e. they certifiy that you understand a set of technical terms in a defined way. That's important when some work is sourced out to different companies.
After working 10+ years at one company, I'm considering changing jobs. Mainly due to the endless re-orgs at my present company. After working at one company for so long, I'm not totally sure what to expect from an employer.
I've been applying mostly to Fortune 500 companies. The one that's come off as the most professional so far had one downside. They don't give local admin rights to the developers. I won't mention the name, but this is a financial services company. Other than that, everything sounds good so far. Good pay, advancement potential, 40 hour work week, bright co-workers, profitable business model ( for the division I'll be working at least) etc.
What is your experience? Have you worked for a company that doesn't give admin rights to developers? I do have that now & I work for another Fortune 500 company, but like I said, the unstable environment is wearing me out. Have you encountered any other major bureaucratic hassles that you tolerated? Or left because of?
FYI, I've definitely considered that I'd be happier at a smaller company, but I'd like to try one more large company a shot before I do that.
If you really need local admin rights as a developer or not, depends on the software you have to develop. With COM controls or Windows Services, that would be a PITA, but with .Net / Java desktop applications, I do not see a problem.
How "bureaucratic" is their software development process? How many papers have to be signed off before you can check-in a bug fix - none or many? The daily bureaucracy is far more important than local admin rights. But bureaucracy can be found in companies of any size, and also big companies can have modern development processes.
By the way, I know a company which insists on encrypted hard disks, causing the start of the computer to be terribly slow, and of course all later hard disk accesses...
Have you worked for a company that doesn't give admin rights to developers?
I have worked for several financial corporations and they only gave admin rights to developers.
Have you encountered any other major bureaucratic hassles that you tolerated?
Requiring business casual every day.
Requiring that the 'group' justify themselves every 3 months in front of a review board. Failure could mean layoffs.
I can tell how I treat the first one now, I raise my salary requirements. If they want to pay me more money to show up in other clothes then I will do it.
There can be advantages to some companies. For example at one the company policy was that developers only worked 37.5 hours a week (5 x 8 hour work days with .5 allocated for lunch.) I worked more but there wasn't any discrimination for working that and no pressure to work vast number of hours and you will see that in smaller companies almost universally.
It depends on your confidence level.
Without local admin, every time you hit a blocker due to security restrictions you'll have to wait x days before you can continue that work stream. So long as the company pays you for that time, what do you care?
I am currently working for Winbooks, a Belgium company in Vietnam. The company has its own Framework base on .NET Framework. We make Web application. The idea about the Framework is that HTTP Response to client will be converted and render by Adobe Flash but not a logical ASP page.
This is the first time I work with this kind of Framework.
At the first glance, i see it's very convenience because I do not have to worry about the CSS , HTML , AJAX , JQUERY , MVC, Postback or everything like that in a traditional web application. So, I have no chance to put myself into these programming technique fields.
I am kind of a 1 year experience programmer and I always keep my head for improving my skills. Should I continue to work or back to traditional company where I have chance to work with what I used to?