We use TeamworkPM for the client communication, JIRA for the development and BitBucket to store our code. JIRA and BitBucket are both Atlassian products, so the tickets created are integrated to each other.
Kanban is a software development methodology. Every column in the Kanban board represents a development stage. In each column, there are tickets to be worked on or reviewed. This way, we make sure a second set of eyes review the work of others before anything goes to the production environment.