Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am a Web Developer (working with PHP/WordPress/Symfony2) in a small company (still hiring but at the moment 5 staff), has ~8 months experience (currently a Computer Science student) and asked to fulfill more of a Project Manager role. I am not really even good at personal time management nor would I say my programming is that outstanding yet (still learning, frequently stuck on errors, sometimes server fault eg. setting up a development server and SVN). In reality, it appears compared to my peers, its actually good, but thinking about Google, Microsoft or even err ... Oracle maybe, my skills are probably quite lacking still

I thought either way, its a good learning opportunity. How do I start?

I think I need to have a proper way of collaboration or communicating each others progress and documentation. Theres SVN but being relatively new, it slows things down sometimes. How do I assign work such that people dont mess up other's code? I actually caused a colleague quite a headache when I edited some configuration, meant for personal development use.

I found myself waiting for another colleagues work (user management/login/registration) to be able to complete mine (ACL part for my "module", similar to blog posts). I actually wanted to "fake" a logged in user, but that didnt work out (entirely)

share|improve this question
This question requires a book answer. – Morons Dec 20 '11 at 14:27
There are multiple questions in there. You should focus this to ask a single item. (Asking about SVN, assigning work, time management, etc.) – Richard Dec 20 '11 at 14:47

The answer is "It Depends."

Every company and every team and every product is different, so you're probably not going to get the magic bullet of an answer here.

I recommend that you start simply and act as a facilitator rather than a full-scale project manager. Let the more experienced devs determine the dependencies on the tasks and the appropriate resources to deliver on them. Make it a collaborative, team process where your role becomes one of documentation, coordination and following up.

For example, let's say that the Big Boss comes to you and says "I want a new project that adds feature X to the product." Your job, in such a small company, is going to be to first ask for clarifying information to better understand the scope of the project. Secondly, you're going to ask Big Boss about the priority of this project against the rest of the team's workload.

Once those items are resolved, you're going to organize a meeting with the team and convey the details and relative priority of the project. Ask the team "what are the major tasks that need to get done to deliver this?" You're not looking for the nitty gritty details about column changes and method tweaks, rather, you want something like:

  1. We need to update the Login page to use this new logic.
  2. We need to write an ACL component.
  3. We need to update the database to store new data.
  4. We need to update the Business Layer to pull back the data so the front end can access it.

Have the team put them in order and then volunteer or cooperatively assign. Your job is to capture it all, schedule the meetings and then followup periodically with status updates to make sure that no one is facing any impediments. It's a small team and they are likely expected to move very quickly. This basic amount of coordination, if done right, should help everyone continue working smoothly.

Also, as OmarQa said, read up on Agile. You should also check out SCRUM.

share|improve this answer

you can start by reading a book Agile SDLC, it also might help to check MSF; this won't answer all questions above but at least it is a solid place to start from.

Agile & MSF

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.