Hello , As I got recently the Spring Framework professional Certification v5.0 , many colleagues asked me about the exam and how to prepare for it , so I decided that my first blog article will be about this subject.

So to be succinct and direct I will tackle these topics based on many questions I received on my social network :


What’s The PIVOTAL SPRING PROFESSIONAL CERTIFICATION and why I should get it ?

Similar to Oracle certifications, Pivotal provides a large set of certifications to validate fundamentals skills related to working with Pivotal Spring Platform , you can find many certifications in the official site of Pivotal :

https://pivotal.io/training/certification

Here we are interested by the Spring Professional Certification Which is designed for developers who want to test and validate their understanding  and skills working with Spring Framework.

You can get more details about this certification from the official website :

https://pivotal.io/training/certification/spring-professional-certification

The latest Spring framework certification is Spring Professional v5.0. It is based upon the latest Spring framework version 5 .

So As developer working with Java related platforms and having a minimal few years of hands on experience  , why you should pass this exam ? 

Simply , getting certified would help you to :

  • Find a highest paid  opportunity as Spring developer
  • Provides you a competitive edge over other developers
  • Helps you to learn and master Spring 5 concepts like Reactive Programming and micro-service architecture.
  • Being recognized as a Spring Framework expert in your current position which helps you moving on more leading technical positions.


Can I pass it really , are there any prerequisites ?

Absolutely yes ! Just be patient and ambitious ! 🙂

As I got many requests regarding certification prerequisites  , I think that to ensure this exam you should :

  • Be efficient in Java development (starting from JDK 1.7  ) .
  • Have worked in professional projects based on Spring Framework ecosystem ( v 4.3 or later ) .
  • Be able to explain the basic concept under the hood , for example , how an Application Context  is initialized .
  • Finally , 200 dollars to buy an exam voucher ! 

 


 

What are related topic should I prepare for ?

As well known , Spring Framework offers a great number of Umbrella projects (someone prefer to say modules ).

Te great news is that these topics are not all required to pass the exam , multiple subjects are marked optional 🙂

Please refer to this list to get the required topic included in the certification Exam as defined by Pivotal , I put the percentage of questions per topic in exam :

  • Container  (28 %)
  • AOP  (14 %)
  • JDBC  (4 %)
  • Transactions  (10 %)
  • MVC  (10 %)
  • Security  (6 %)
  • REST  (6 %)
  • JPA Spring Data  (4 %)
  • Spring Boot  (14 %)
  • Testing  (4 %)

To give you a brief insight regarding these topics , there a list of keyword for each topic which can help you define the most items you should strengthen your skill :

 


Spring FrameworkVersion 5.0
Containerapplication-context
life-cycle of Spring beans
AnnotationConfigApplicationContext
FileSystemXmlApplicationContext
BeanFactoryPostProcessor
BeanPostProcessor
ContextLoaderListener
AbstractDispatcherServletInitializer
@ContextConfiguration
@RunWith(SpringRunner.class)
@SpringJUnitConfig
registerShutdownHook,
Bean Scopes
@Component , @Autowired , @ComponentScan , @Qualifier , @Configuration , @Lazy , @Profile
@PropertySource
ProperySourcesPlaceholderConfigurer
@PreDestroy , @PostConstruct ; JSR-250
Java Config , @Bean
@Value("# , SpEL , StandardServletEnvironment
AOPCross cutting concern
Pointcut, join point,advice, aspect, weaving
JDK dynamic proxies , CGLIB proxies
@Before , @AfterReturning , @After , @Around
@EnableAspectJAutoProxy
execution(* , within( ,
ProceedingJoinPoint
JDBC DataSource , JndiDataSourceLookup
JdbcTemplate
callback : ResultSetExtractor , RowCallbackHandler , RowMapper
batchUpdate , execute , query , queryForList , queryForMap , queryForObject , queryForRowSet ,update
Transactions@Transactional
Transaction , a local and a global transaction
The transaction isolation level.
noRollbackFor , noRollbackForClassName , propagation , readOnly , rollbackFor
PlatformTransactionManager?
@EnableTransactionManagement
declarative transaction management
MVC MVC Design Pattern
DispatcherServlet
web application context vs ApplicationContext
Spring bean scopes , default scope
@Controller
@RequestMapping, @RequestParam ,@PathVariable ,
Controller return types
web.xml
servlet 3 vs servlet 2 specification
Security Authentication , Authorization , Cross-Cutting Concern
Spring Security Web Infrastructure
DelegatingFilterProxy , FilterChainProxy , SecurityFilterChain,
SecurityContext ,GrantedAuthority ,UserDetails ,UserDetailsService
Request Matcher , antMatcher vs mvcMatcher , Password Hashing , Salting
@EnableGlobalMethodSecurity ,@PreAuthorized and@RolesAllowed , JSR-250
RESTResource
HTTP verbs : POST, GET, PUT, PATCH, and DELETE
REST Secure , HTTP Method Idempotent /safe
REST scalable , interoperable
HttpMessageConverter , stateless
@RestController ,@RequestMapping , @ResponseBody , @ResponseStatus
spring-boot-starter-web , RestTemplate
JPA Spring Data DataSource , EmbeddedDatabase
spring.datasource.jndi-name
PlatformTransactionManager
ORM , PersistenceContext , EntityManager , @Entity
Spring Data repository, @EnableJpaRepositories
find(First[count])By[property expression][
@Query
Spring BOOT@SpringBootApplication
spring-boot-starter-parent ,spring-boot-devtools
@Configuration , @ConfigurationProperties
Automatic configuration
@ConditionalOnClass,@ConditionalOnWebApplication
application.properties ,YAML
@SpringBootApplication , @EnableAutoConfiguration ,@EntityScan
@SpringBootConfiguration ,@LocalServerPort , @SpringBootTest , @WebMvcTest
Jetty
Testingunit test , integration test
JUNIT
@SpringJunitConfig , @Transactional ,@ContextConfiguration
Mockito ,EasyMock
@DataJpaTest ,@WebMvcTest
@SpringBootTest
@SpringBootConfiguration

 

Really I am confused 🙁 ,
How you eat a whale : one bite at a time !

Dont panic my dear , we will fix togother a working strategy to crack the Spring professional exam  basing on your profile , if you are  :

  • Junior Spring developer or an Entry Level Profile

I strongly advice you to join a Pivotal training session during generally 4 days to get the basics you need to crack the exam.

After that , you need to practise each topic and be patient ! , take your time before to decide to pass the exam  until you feel at ease with most of mock exams questions.

  • Experienced Developer

If you have decent work experience in Spring framework example two or three years working on real projects   , you just need to practise others topics invoked in the previous section ( I  mean by practising , either on professional projects or check a great tutorial about and try to get hands on it !  )

Try some mock exams / get sample questions related to exam topics .


     

    Could you please advise me for any related useful resources or books ?

    There are a plenty of books covering Spring framework , reading a book of 500 pages seems to be boring for someones  🙂 So I prefer to take another path : 

    Pivotal Study Guide :

    Piroval provides in their website a study guide and a set of questions covering the hole scope of the exam , responses to these questions should be  great ressource for you to prepare the exam  , please find there a the complete list of questions :

    https://d1fto35gcfffzn.cloudfront.net/academy/Spring-Professional-Certification-Study-Guide.pdf

    You can find some responses to these questions in a great free Book :

    https://leanpub.com/corespring5certificationindetail

    This book is not yet complete  , when I prepared for the exam I prepared all questions of the study guide , these latter will be included in my Future Book ” Spring Professional 5 Certification Guide ” (  first release Avril 2019 ) .

    Official Documentation  :

    I dont mean here to read the hole documentation , but for each item mentioned in questions , check the documentation for further details.

    Mock exams :

    https://www.certification-questions.com/spring-dumps/core-professional-v5.0.html

    You can buy a complete mock exam from this interesting website .


    Where Can I register for an exam session , how much does it cost and should / must I assist to a pivotal training session ?

    I will start by a great news 🙂

    Pivotal training session is no more obligatory !

    Ever since Pivotal, the company behind Spring framework made the mandatory Spring training optional 

    Where Can I register and how much does the exam costs ?

    So , you buy a voucher from Pivotal in order to pass the exam , please check this link :

    https://academy.pivotal.io/confirm-course?courseid=EDU-1120-APP

    The exam costs 200 $.


    Finally , How this exam looks like ?

    This table should give you details about the exam :

     

    Type of the exam Computer based exam , multiple questions
    Number Of Questions50 Questions
    Types of Questions1. Multiple Choice, 1 Answer
    2. Multiple Choice, 1 Or More Answers
    Time Limit 90 Minutes
    Passing Score76% (38 Questions)


    You find samples for questions here :

    https://www.certification-questions.com/spring-dumps/core-professional-v5.0.html

    In my next articles I will prepare for you a mock exam which looks like the Pivotal one .

    Good luck dears .


    Thanks for reading this post , please feel free to suggest any other questions or a subject to consider also remarks to improve this post :)


    20+

    Mohamed Ben Hassine

    Hello , I am a Software Technical Leader  / Lover / Speaker / Blogger / Trainer with over 9 years of experience in designing and developing financial and telecommunication large scale enterprise applications using Web / Java/JEE technologies. Open to multi-culture customers and workplaces, I help companies and individuals build scalable Web Applications using last proved web technologies and enterprise software architectures.

    18 Comments

    Rabeb · 24 December 2018 at 14 h 12 min

    Thanks Mohamed; very interesting.

      Mohamed · 25 December 2018 at 9 h 20 min

      Thank you Rabeb 🙂

    SALAH EDDINE · 24 December 2018 at 23 h 32 min

    This is fascinating and really well explained. Thank you!
    waiting for mock exam 😉

      Mohamed · 25 December 2018 at 9 h 20 min

      Welcome Salah 🙂 I hope it was helpfull for you , the mock Exam is ongoing and will be delivered as soon inshAllah , Thank you

    Mootez · 25 December 2018 at 13 h 33 min

    Firstable, congratulations on passing the exam.
    This is a very insightful and encouraging article, suscint and through to the point.
    Can’t wait for the next article. Keep them coming.
    It helps so thank you

      Mohamed · 25 December 2018 at 13 h 34 min

      Thank you Mootez 🙂

    wiem · 25 December 2018 at 14 h 23 min

    Very interesting. Thanks 😉

      Mohamed · 25 December 2018 at 14 h 24 min

      Thanks for reading my post , You are welcome Wiem 🙂

    Louhichi · 31 December 2018 at 22 h 20 min

    Very interesting post i really appreciate your article.thks a lot
    Wé need To read more and more
    Happy new year and many happy returns

      Mohamed · 1 January 2019 at 13 h 28 min

      Thanks Louchichi , more articles about Spring Framework ,web Dev and Java are coming soon inshAllah 🙂 Happy new year for you also

    Wahid · 20 January 2019 at 15 h 00 min

    Very interesting Mohamed,

    Hleb Bandarenka · 12 February 2019 at 7 h 16 min

    Hi, Mohammed
    Thank you for your post
    It is sad that you didn’t write it before I have passed this exam

    I just want to clarify that this exam and preparation for it will not help to understand Reactive Programming, because not exist any question on this theme

      Mohamed Ben Hassine · 13 February 2019 at 9 h 38 min

      At first Congrats Hleb ! Exactly , Reactive programming is marked as optional and unfortunately it is not required for the exam , we will try to cover this topic in our Blog tungeek in order to share knowledge among developers.
      Regards

    Himanshu · 18 February 2019 at 13 h 20 min

    Hi, Mohammed
    Thank you for your post

      Mohamed Ben Hassine · 18 February 2019 at 16 h 21 min

      Welcome Dear Himanshu , please let me know if your need more help or informations about the Spring exam

    Manel Guizani · 6 October 2019 at 12 h 42 min

    Bravo Mohamed, une description brève qui répond à toutes mes question. Thank you

    Leave a Reply

    Your email address will not be published. Required fields are marked *