Marcin chose to use CircleCI because he was most familiar with it compared to other continuous integration tools. His teammates had also used CircleCI successfully in previous roles. Additionally, CircleCI offered strong native Docker support and caching capabilities as well as recommendations from an experienced user. Marcin's CircleCI workflow involved running tests using a custom Docker image, building images, and deploying to Heroku with potential optimizations like sharing images between jobs and speeding up tests through parallelization.