Question: In the beginning of the Sprint we assign various items to each developers. Some developers may work on more than one item at a time, however when they work on the item they typically `Start Progress` which puts the item in the `In Progress` state.

In the concept of Scrum or Kanban, does anyone know negative consequences of having more than one item in `In Progress` state per developer?

Answer: 
Having more than 1 item In Progress for a single person will *kill* productivity. Multitasking is horrible for getting things done quickly and/or well. See [Agile team full of part time developers](https://pm.stackexchange.com/questions/21286/agile-team-full-of-part-time-developers/21287#21287) for more details.

It might seem like a good idea to pull in new work if something gets roadblocked, however this is, in essence, optimizing for utilization (making sure everyone always has work to do) rather than for flow (making sure lead time, the amount of time issues spend 'In Progress', is as low as possible). Which is not efficient. See the [100% Utilization Myth](https://dzone.com/articles/100-utilization-myth) for more information. In this situation, it's better for the Team to focus on removing roadblocks as quickly as possible, rather than leaving multiple tasks partially-finished and bringing about inefficiencies from multi-tasking and busy dependencies.

Also of note:

> 
> In the beginning of the Sprint we assign various JIRA items to each developers.
> 
> 
> 

Scrum works best as a *pull* model, rather than as a push model. Meaning management (whether Scrum Master, Product Owner, or others) leave tasks in the 'TODO' column, and developers assign tasks to *themselves* once they finish what they're currently working on.
There's something wrong in the context of Scrum. No task is assigned to a single developer in Scrum. The Scrum guide states:

> 
> They (*the development team members*) are self-organizing. No one (not even the Scrum Master) tells the Development Team how to turn Product Backlog into Increments of potentially releasable functionality;
> 
> 
> 

It's a pull way of work, not a push one.

That said, and on to the specific question, it's a matter of making sure your board reflects in a consistent way the situation, so that you can take actions if something's not right. 

Since "in progress" means "I'm actually working on...", and nobody is capable of working on 2 things at the same time, if you happen to have multiple tasks ongoing that means some tasks are waiting (for somebody to resume them, for external input, or are simply blocked)... so you either leave them in the "to-do" column, or you mark them as "blocked", "pending", "waiting for", whatever state is suitable given your internal processes. This way the issue becomes visible and can be treated.