Agile Software Development
Reflections on Agile Software Development
Sunday, March 13, 2011
The Forrester Wave™: Agile Development Management Tools, Q2 2010
http://www.rallydev.com/downloads/download/206.html
Sunday, January 23, 2011
Saturday, January 22, 2011
Sunday, September 26, 2010
12 Reasons for NOT changing your Job
Here are a few reasons against Job Change:
- Your Company is passing through a rough phase, but there is nothing specifically wrong with your Company. The entire industry sector is going through the same rough phase. You believe in the long term growth story of your current Organization and you know that when things turn around, you will be in a much better position.
- Your Organization is going through a rough phase, but you have enough influence to try to improve things. The experience that you can gain by working through rough times and help your Organization recover its past glory is priceless!
- You did not get a good increment due to poor performance compared to your peers. Nevertheless your boss appreciates your accomplishments and provides you periodic feedback on how to improve your performance. Your Boss has also helped you formulate a career plan and has agreed to provide adequate training/coaching in the areas that you need improvement. You can probably get a better salary elsewhere if you decided to move, but doing so may not provide you the opportunity to improve your weaknesses.
- If your are an obsessive compulsive job hopper (going by your past records) you need to do some soul searching before you decide to accept the new offer!
- Your current job may not be as paying as a new job offer, but there is tremendous opportunity to learn and gain valuable experience from your current job. Try not to change your job just for some extra money!
- You are comfortable with your current job. You already have some personal issue to deal with (newborn child, ill health of a family member, etc) and cannot afford to take on added stress by accepting a new job offer.
- You are not happy with your take home salary. Remember to do an apples-to-apples comparison with your new offer. You need to consider all the benefits including vacation days, bonus, medical insurance, stock options, tax implications on the new salary structure, etc. Microsoft Excel is the best tool to perform this analysis.
- Your new job offer will requires you to take on too many extra responsibilities without proportional increase in Compensation.
- If you accept the new offer, your daily commute time will increase substantially and might impact your work-life balance.
- The new Company does not have a good reputation in the market.
- You have doubts about the business road-map of the new Company, or unsure of your role in the new organization.
- Although counter-offers are not always a good thing. But if you have good relationship with your current organization and your boss gives you a counter offer, you might seriously consider the pros and coons of accepting the counter offer.
24 Reasons for Job Change
People may choose to switch jobs for various reasons. Here are a few common reasons based on my experience over the last 15 years of my professional life:
View Related Post on 12 Reasons for Not changing your Job
- Your Company is not growing with the industry or is even making losses and there is nothing much you can do about it.
- You seek more challenge, responsibility or opportunities that don't exist in the current organization.
- You are stagnated in your current role. Your organization is not growing fast enough or does not have room for you to grow. There are too many seniors above you who are also not growing to make way for you to grow.
- Your compensation is below the market standard and has stayed that way for too long.
- You do not have a mentor in your current organization who can accept you as a protege and help you grow in your career.
- You have to routinely work overtime (or odd hours) that affects your work life balance. There is no compensation or bonus for the extra hours worked.
- Your peers or supervisors still believe in outdated work philosophy which is not in line with the current industry norms.
- You do not fit-in with the work culture or office environment of your organization.
- Your office space does not comply with the basic standard for your industry and it has been that way for too long.
- There is no direct correlation between your company's growth and your own professional growth. Your Company is growing but your own role and responsibilities are shrinking.
- Your organization does not invest in training and education.
- Your job responsibilities are not in sync with your designation. The company has promoted you to a new role and also increased your compensation to keep you happy. But your job responsibilities remain unchanged. You fear that if you stay in such a position for too long you may not remain marketable. You will become a bonsai.
- You wish to relocate to a different city or country due to personal reasons.
- You seek international experience which our current organization cannot offer you.
- So far you have worked in a small organizations but now you want to work for a larger and more reputable organization which can offer you a richer job experience, holistic career growth and brand value that might help you in the long run.
- You are seeking job stability which your current organization does not provide you.
- You are seeking more rewards and are willing to take on more risk and responsibilities for faster career growth.
- You hate travel but your current job requires you to travel.
- You would love to travel and meet new people, but your current job does not provide you the opportunity to do so.
- You currently work in a big organization but seek to work in a smaller organization for a fast track career growth, glamor of working in a start-up or for the lure of stock options.
- Peer Pressure: Your close friends or colleagues are moving abroad or moving to other companies. You decide to follow their lead.
- You do not like your boss neither does your boss like you.
- Your manager (or mentor) has left the organization. You don't like his replacement. The new Manager does not like you either!
- A new Company is opening base in your town. Everybody is talking about joining it. You cannot resist the temptation to try your luck!
- You are unhappy with your previous performance appraisal.
- Your company seldom adopts industry best practices, tools or technology.
- You have multiple bosses to report to.
- Your boss does not return your phone calls and seldom replies to your emails.
- Your boss is a mean fault finder who never appreciate your accomplishments.
- You have to fill in multiple time-sheets.
- Your company does not offer you flexible timings.
- There is no gender or racial diversity at your workplace.
- There is no decent parking space.
- Your daily commute is too long.
- You hate the food they serve in the cafeteria.
- The toilets/rest-rooms are never clean.
- They did not give you the room with the big window overlooking the woods (although you thought you deserved it).
- There is no games room.
- They do not allow casual dress on Fridays.
- You have recently watched the movie "Office Space" for the n-th time.
View Related Post on 12 Reasons for Not changing your Job
Wednesday, September 22, 2010
Why Change is so Difficult
"Corporate culture tends to blind an organization to a need for change until the organization as a whole can accept the reality of the need. But when the need is so obvious that the whole organization can recognize it, competitive advantage in flexibility and speed of response has been lost. On the other hand, if an effort is made before there is a general awareness of the need, it endangers the very ability to lead".
-Why Change is so Difficult, Bruce D Henderson (From The Book: The Boston Consulting Group on Strategy)
Change is a reality of our times. Our very survival depends on our ability to adapt and compete with changing market forces. If we do not recognize the need of a change early on, we loose precious time and competitive advantage. But often we get so much accustomed and comfortable with the status quo, that we turn a blind eye to the possibilities that can open up if we embrace change.
Who are more likely to embrace change?
- Visionaries who can foresee the future benefits of embracing change.
- People who love to learn new things and believe in lifelong learning.
- People dissatisfied with their present circumstances. They do not have anything to loose by embracing change.
Who are more likely to avoid change?
- People averse to any kind of risk.
- People who are scared of learning and trying out new things outside their comfort zone.
- People who have vested interest in preserving the "status quo".
Tuesday, April 20, 2010
Pair Programming 2.0
The classical view on pair programming (as popularized by Extreme Programming camp) is two programmers coding together at one workstation. I think a more practical approach is two programmers working together to implement a single feature. They can do the design together or even work together in a single work station to code the critical components. However, they don't have to necessarily sit next to each and do the entire development in a shared work station. I think it is more effecient for the programmers to try to split the work into small chunks that can be developed in parallel working individually. The developers can probably sit togehter in pair every morning to catch up with each other's progress or jointly review each other's code and plan the next steps. If required they can even swap some of their low level tasks as they deem fit. They can even test each other's work, jointly create test cases, etc.
The point I am trying to make is that every individual need some physical and mental space to think and work. Working together with another developer by sharing the same work space daily could be emotionally and psychologially tiring.
However, I do think that it really makes a difference if developers work together in pairs to implement a single feature. Let us say we have a six member team and 12 features to implement in an iteration. It makes better sense for the team to pick 3 features and complete them by working in pairs in the manner described above. Thereafter, as and when the pairs complete working on a feature, they pick the next feature in order of priority. If the team size is not an even number, then adjustments have to be made so that the team members take turns to serve as the odd man out who has no choice but to work alone on a task.
Twitter is over capacity
Tuesday, December 22, 2009
Free eBooks on Agile and Scrum
Here are some links to free eBooks on Agile and Scrum. To download in IE, right click on the link and Select "Save Target As". If you are using Firefox, right click on the link and Select "Save Link As".
Scrum and XP from the Trenches
Scrum Primer
Do It Yourself Agile
Patterns of Agile Practice Adoption eBook Home Page
Scrum and XP from the Trenches
Scrum Primer
Do It Yourself Agile
Patterns of Agile Practice Adoption eBook Home Page
Subscribe to:
Posts (Atom)