IT Staffing Strategy and Procurement

In between IT managers and the vendors they use for staff sourcing, there is an administrative organization. This organization is responsible for contracts and policies that support the hiring of contract staff. Some organizations house this inside of human resources, others inside of what would be a traditional purchasing or procurement department.Continue Reading

Design Philosophy And Coding Style

Caution, Rant Alert!

In my career, I have been some kind of leader on about a dozen new application projects. It is interesting to me that the only time I have ever heard about “design philosophy” or “coding style” is when some new developer comes on a project and gets his butt handed to him in a code review. Specifically, what I hear is a defensive posture which sounds like an excuse for code that is not a good fit for purpose or consistent with the surrounding application.

In a prior post HelpingTheTeam I talk about some new developer problems. This is another, perhaps less common issue.

Here is a list of bad coding practices that I have heard defended as “design philosophy” or “coding style” and why they are neither philosophy or style:Continue Reading

A New Aspect of Talent

Seth Godin’s Post: Your Alphabet   is a reminder to me about something that I thought while writing these two posts describing the aspects of talent IT Staffing Talent and IT Staffing Strategy Considerations.

These two posts talk about talent and about the impact of talent on IT Staffing Strategy.  Seth’s post reminded me of one definition or description of talent that I had removed from the prior posts because it didn’t flow or fit.  Sometimes talent is the ability to take skills or abilities that one has and combine, manipulate, repurpose, or bend them to accomplish something one does not have the “accustomed” abilities to do.Continue Reading

IT Staffing Sources and Process

In the application delivery domain, there are four basic sourcing models or patterns:

Permanent – the team is composed of permanent employees
Contract Staff Augmentation (onshore) – the team is composed of some mix of permanent employees and local contract staff hired by our managers.
Outsourcing (onshore) – the team is composed of contractors from the same firm with their own embedded leadership that chooses their own team either on premise or off premise as agreed.
Outsourcing (offshore) – the team is composed of contractors from the same firm with their own embedded leadership that chooses their own team usually the majority off-premise, off-shore with some on-shore, on premise presence as an “interface” layer.

In each of these patterns as we progress from permanent to offshore the domain knowledge of the developers decreases. With this decrease in domain knowledge, greater rigor in communication and documentation are required. Continue Reading

A Quick Planning Primer

This post is for those of you who are having to plan your own activities, or the activities of others for the first time.  Or maybe you just want an easier faster way to think about creating a plan.  Maybe you want something simple – because all the complex project management body of knowledge ideas or other methodologies are making your head explode.  For whatever reason you want to learn to make plans quickly, simply and easily – this post has your name on it.

Remember planning has three basic steps:

What needs to be done?  In what order?  On what schedule?

Everything after that is some form of optimization.  Since we are not optimizing, we can be simple, quick and easy.Continue Reading

Top Six Estimating Tips for Programmers

Every programmer struggles with providing estimates. It is a universal truth of software development. Most of the time we go way too deep, try to be more precise than we have any reason to be. Many times we have fear driving our estimates – what if they are too big (will they cancel the project? or will they assign the work to someone else?) or worse, what if they are too small (will they fire me because I appear incompetent?).

Here are my top six tips for solving estimation challenges in software development projects:Continue Reading