Feedback after attending the course: you must attend! Seeing how and why Francesco makes software design decisions is super helpful in improving how you make your decisions!
Dealing with fast growth, technical debt, stressful and demanding deadlines?
Develop your software design skills to make your software grow in a smooth, fast and sustainable way.
Learn with Francesco Cirillo how to develop your software design skills, eliminate doubts and acquire new points of view about software design in order to make the construction of your software system effective and enjoyable.
|Event||Software Design Q&A with Francesco Cirillo
Francesco answers your questions
|Mentoring||Software Design Mentoring for individuals and teams
Francesco Cirillo works with you or your team to improve your software design skills
|Training||Software Design Explained (SDE)
Thematic seminars to develop your skills about objects, patterns, practices, processes, and give you a new point of view about software design
|Training||Software Design Practice (SDP)
Anti-IF Workshops to learn how to deactivate the “IF strategy” to deal with complexity and change
|Training||Software Design Adventures (SDA)
Workshops led by Francesco Cirillo to understand how to make design decisions when developing a real software system
A complete training programme led by Francesco Cirillo to improve your software design skills.
More than 30 years of experience at your disposal to develop your software design skills.
Discover your full potential and become the Software Designer you want to be.
Let's talk about software development
In this online live session, Francesco will answer your questions about software design and software development processes. Every session will focus on a particular topic of software development based on the most frequently asked questions received.
Work with Francesco on your projects and your skills
One day of mentoring with Francesco Cirillo to dispel doubts and insecurities about the application of principles, patterns and practices to correct and take your development process to the next level.
You develop your software design skills
In every seminar of the SDE series, Francesco will explain a design principles, practice, pattern or a development processes. Francesco will not only explain the most relevant design topics, he will also share with you his way of using them. You will develop awareness about software design, and you will be instantly able to enhance your software development productivity
You apply your software design skills to deliver real requests
These Workshops are 100% hands-on. Participants are given a series of real customer requests to be delivered in 3.5 hours. Customer requests involve solving a variety of design challenges. Participants individually develop their own solutions in their preferred language and IDE. When they want to, they can show their code/solution in one-to-one sessions with Francesco. Francesco takes snapshots of the participants' code which he shows and comments with all participants every 3 pomodori.
Francesco applies his software design skills to deliver real requests
A Software Design Adventure is a series of workshops of 3.5 hours each in which Francesco will develop one or more functionalities of a real software system. Each adventure is centered on different features and applications. Each workshop in the series is independent of the others.
The goal of the Software Design Training Programme is to train the software designers of the future.
You will learn how to reduce the complexity of your software system each time a new feature is introduced and in this way to make the construction of your software effective and enjoyable.
Our philosophy is to develop awareness about software design. There are no good or bad principles, patterns, practices or processes. The experienced designer knows how to choose between them according to context. The current complexity of the software system, the complexity of the new feature to be implemented, the degree of preparation of the team and even the level of tiredness of its members can lead to a different design choice.
Developing a software system means to grow a behavioral system. Introducing a new feature requires to know how to reduce the overall complexity of the system. Only in this way software growth can be sustainable. To do this, software designers need to learn how to deal with real working software systems. Possibly, complex, fast growing software systems.
Faced with real software systems, it is necessary to master solid conceptual tools: principles, patterns, practices and processes of software design. Every principle, pattern, practice and design process has its own motivations, advantages and disadvantages. When faced with a working behavioural system it is necessary to be aware of them and to know how to choose between them. How to choose the next step.
|Certification||Software Designer Certification Level 1||Coming soon|
|Certification||Software Designer Certification Level 2||Coming soon|
|Certification||Software Designer Certification Level 3||Coming soon|
|Certification||Software Designer Certification Level 4||Coming soon|
Tell us more about yourself or your team.Request Info
Francesco has worked at the forefront of the software industry for more than 30 years.
In a career spanning startups, corporations and freelance consulting, he has mentored thousands of professionals, developers, managers and software teams.
In the 1990s he worked as a Senior Consultant and Mentor for Sun Microsystem, expert in Software Architectures and Software Development Processes and Java and Object-Oriented Evangelist.
Francesco is one of the pioneers of agile methods. He started working on XP and TDD in 1999. He was chosen by Kent Beck as reviewer of the second edition of the book Extreme Programming Explained.
He created the Anti IF Campaign in 2007 to raise awareness in the international community of developers to apply good design principles.
Francesco has been developing RRP, a new method of software development, since 2008.
He has been running the Software Design Training Programme since 2019.
Francesco created the Pomodoro® Technique, a renowned time-management tool used by millions of people all over the world, while a university student looking for a way to get more done in less time.
No prerequisites required.
Our software design training programme is perfect for newbies as well as experienced developers.
Once you understand how software design can make your software simpler over time, you will feel the need to get away from the vices and rigidity that often compromise the effectiveness of every day design solutions and will feel eager to improve the design of your system! Ready to start?
The Software Design Training Programme can be offered live online, and, when COVID restrictions will allow it, also onsite in your company and in-house in our offices.
The full series of SDE will soon be available as a series of recorded webinars.
We will be pleased to make you an offer tailored to your needs. Tell us more about yourself or your team.Request info
The following is the report of the first session of the Accounting Adventure. The time is 31 March 2021 at 9.30. The place is somewhere on the Internet on Zoom.
The following is the report of the first session of the Accounting Adventure. The time is 27 April 2021 at 9.30 am. It is a beautiful day outside in Berlin: 18 degrees Celsius.
Do you have a question not listed here?