I am currently working on a project which is based on the Helix principles, it has been couple of months, since I started working on this, here are some of my learnings, we use TDS (Team Development for Sitecore),

1.TDS Sync: one Sitecore item to one TDS project

Never sync same Sitecore item into multiple TDS projects, this creates lot of dependencies, as well as your automated package deployments go for a toss.


2. Web.config: Build Action to none

Other than your main web.config file, make sure to set all feature/foundation level web.config files Build Action to none, and Copy to Output Directory to Do not copy. If not, these files override the main web.config file.