I'm not sure if this is helpful, but as a full stack-developer, I still work in a similar structure to the way you've described.<p>Essentially you're talking about two sides of development. Front-end vs. Back-end, and yes, it is very common to split up work like that. I've never heard anybody describe 'modules' as 'models','views','urls', etc. etc. though.<p>A back-end dev, team, or when doing back-end work, you're focused on the server side architecture and code. That would include your models, views, controllers, routes, database, etc.<p>A front-end dev can then take these end-points (routes or URLS) and build the templates, and front-end experience (HTML, CSS, Javascript).<p>I think the problem you may be having is in how you're defining what you're working on. You say specifically 'when we add a new table', but a front-end guy isn't going to know what to do with a 'table'. That is back-end. Both teams should be focusing on the feature or capability you are providing, not the technical structure. So rather than saying to the front-end guy 'we added a table and need a view into that table', you may have more success saying 'we want to show how weather patterns affect our shipping rates' or whatever it is the table does. Then the front-end guy can take your URL and from a user-perspective build a solution which solves the problem.<p>Another thing to consider is that design and user experience is not part of Front-end development. You may have a front-end dev who is good at UX and design, but if so, you'll be very fortunate. Some Front-end devs can do design, but not all. So you may want to make sure that before the Front-end (or even Back-end) guys get coding, they have the design of what they are building. That may help both sides come to the best solution quickest.