Continuous Integration and Continuous Delivery with Jenkins
Software Development, Software Developer, Java Development
Continuous Integration (or CI) is essential for any modern software development team. CI provides many benefits, including:
Continuous Delivery is the ultimate form of Continuous Integration, where a fully automatically tested release can be deployed to any environment (from QA to Production) at the click of a button. For some environments (e.g. a test server), this process can be completely automated; for others, it will be driven by the business. With Continuous Delivery, the business can choose when they want the latest release according to business prerogatives, not technical ones.
Wakaleo Consulting can help you introduce Continuous Integration and Continuous Delivery into your organization.
We can review your existing development infrastructure and practices, discuss where Continuous Integration and Continuous Delivery could help you, and determine the best way to get there.
We can also evaluate and discuss other related practices, such as source code manangment, automated testing and automated code quality, that are part of the bigger CI picture.
To bring your team up to speed with Jenkins, we can also run the From Continuous Integration to Continuous Delivery with Jenkins course within your premises.
This course is an intensive 1-day workshop with a mixture of teaching and lab exercises. You will learn about how to design and implement an effective Continuous Integration build environment, as well as some invaluables tricks of the trade, using , the world's most popular CI tool. The techniques discussed in the course are also applicable for .
The basic course program is outlined here:
- An introduction to Continuous Integration (CI) principles
- What you need to implement CI
- CI-friendly development practices
- Setting up a CI server
- Continuous Integration build strategies and best practices
- CI notification strategies and techniques
- Automated testing
- Automated code quality audits
- Automated reporting on project status and statistics
- Integrating CI with your issue management system
- Automated release strategies
- Automated deployment
- Continuous deployment
- Using distributed builds to speed up the build process and to run environment-specific build jobs
- Applying CI to large projects - using CI on with large teams or multi-team projects, with multiple development/integration SCM branches,..
Students will come away from this workshop with a solid understanding of how to implement a Continuous Integration environment in their organisation. They wil be able to set up a working Continuous Integration server, complete with automated builds, tests, code quality audits and reports, and automatic deployment to an integration server. They will also be able to integrate CI with other tools in the development environment, such as issue tracking systems and source code browsers.
This is a hands-on, practical course designed to teach specialised skills for real-world development situations. It is thus primarily aimed at a developer audience:
- Java developers of all levels
- Software architects
- Technical project managers
The course is modular and flexible - depending on specific student needs and requests. Through our trainings, you benefit from the wide experience and architectural expertise of our team. We bring that experience to you in an highly interactive, intensely hands-on setting.
We assume participants have a reasonable understanding of Java development as well as a basic understanding of the Software Development Life Cycle.
All our courses are above all practical in nature. We believe that the best way to learn is by doing. So the course contains approximately 70% lab work.
Each registrant will receive a copy of the student notes and lab solutions, a certificate of completion, and a CD containing all the tools covered in the course.
- "Best development course I have been on in a very long time. Will seriously improve our development/build/test lifecycle." - Neil, Software Developer
- "One of the best and most useful courses I have attended. And they didn't even try to sell me anything!" - Jonathan, Developer
- "Greatly enjoyed the course. Provided many useful insights on how to introduce improved ways of working and how to incorporate new technology with new and 'legacy' Java projects." - Derek, Technical Team Leader
- "A well organized course. A 'must' course for serious Java developers. It's not only about the tools to be used in day-to-day development, but also about best methodologies and practices." - Apparao, Software Developer
- "Gives a very good overall view of the Java development environment. Not just how to write Java code but the 'business end' - how to build, test, deploy, manage and monitor." - Tom, Software Developer
- "This was a great all round introduction to best practices for development process optimization. I found all of the content very helpful and easy to understand. Many of the techniques and technologies will improve our processes a great deal." - Linton, Developer
- "John has given a very well-run course, with plenty of demonstrations on bleeding-edge Java tools, which spans over project management, development techniques, testing and the build process." - Wayne Ng, Software Developer
- "This bootcamp gives a good breakdown of some tools to aid in Java development. I can definitely see their use coming in handy." - Wayne, Systems Programmer
, Lab Work
, Software Developer
, Software Development