What do you like best?
Jenkins provides out of the box a complete Continuous Integration system that allows you to automate your development processes within a few minutes. Using it's plugin system, there's basically nothing you cannot automate.
When a single instance is not sufficient anymore, Jenkins is easily scalable and fast processing your workflows in parallel.
Jenkins offers a great dashboard to manage and display your running processes and even provides additional plugins to have key performance indicators (KPI) displayed on full screen in the offices so there's always transparency with the development teams.
Jenkins integrates with the majority of commincation tools, we have for example it integrated into our emails, Slack, IRC channels, SMS Service and Time Tracker so that developers don't have to worry they miss an important update or failure notification.
What do you dislike?
Sometimes you receive failed process stack traces that doesn't show clearly if the failure occured because something failed in Jenkins or in your application workflow.
Because Jenkins needs to be installed on-premise and is Java based there's a requirement to have a Java stack available just to run Jenkins. This can sometimes be an issue if you're not having a Java oriented operation as this adds additional support requirements.
Recommendations to others considering the product
Jenkins offers a huge amount of functionality and it's easy to get lost in the overflow of options. My advise is to start small and automate pushing your local code onto production. Once you understand what it can do more, you can add more processes to this workflow and make them dependend of each other by building pipelines.
Once you feel comfortable using Jenkins, you can unleash it's real power and add all testing and QA processes in the mix, have conditional database provisionings and automate provisioning of cloud VM's.
Once you start automating your development workflows and move towards continuous deployment, you will see you're saving a lot of precious time that can be reinvested into your development.
What business problems are you solving with the product? What benefits have you realized?
Jenkins is a Continuous Integration system that allows you to automate workflows beyond development so developers have more time to focus on what they do best: development.
By implementing Jenkins and a test driven development policy, we have reduced the development overhead by 400% and with the automated processes after development we have our changes pushed to production with less failures and higher quality.