I’m a fairly skilled frontend developer [I’ve only worked with external public APIs]
I understand that a basic web development team will minimally contain roles for a UI/Interaction Designer, a Front-End Developer & a Back-End Developer.
I’m curious about how they collaborate - Do backend devs finish their job then release the API before frontend devs start their job? Do backend devs wait for UI designers to know how they’ll model the API? or do UI designers wait for backend devs API to have an idea about the UI they’ll design i.e checkbox or dropdown]
And also what software do small teams use for collaboration?
Not necessarily. Not all teams (even large ones will have a designer). Sometimes there may not be a division between front and backend developers.
It depends. It depends on what drives the requirements, how much work needs to be done at each level, which developers are available first, the working agreements of the team, etc. It’s possible for any of these activities to overlap.
There are a lot of project management software options out there. Usually your company will have made that decision for you.