- Magento 2 Certified Associate Developer-33%
- Magento 2 Certified Professional Developer-18%
- Magento 2 Certified Professional Developer Plus-6%
- Magento 2 Certified Solution Specialist-22%
Describe module architecture. What are the significant steps to add a new module? What are the different Composer package types? When would you place a module in the app/code folder versus another location?
Describe the Magento directory structure. What are the naming conventions, and how are namespaces established? How can you identify the files responsible for some functionality?
Determine how to use configuration files in Magento. Which configuration files are important in the development cycle? Describe development in the context of website and store scopes. How do you identify the configuration scope for a given variable? How do native Magento scopes (for example, price or inventory) affect development and decision-making processes? Demonstrate an ability to add different values for different scopes. How can you fetch a system configuration value programmatically? How can you override system configuration values for a given store using XML configuration?
Demonstrate the ability to use the dependency injection concept in Magento development. How are objects realized in code? Why is it important to have a centralized object creation process? Identify how to use DI configuration files for customizing Magento. How can you override a native class, inject your class into another object, and use other techniques available in di.xml (for example, virtualTypes)? Given a scenario, determine how to obtain an object using the ObjectManager object. How would you obtain a class instance from different places in the code?
Demonstrate an understanding of plugins. How are plugins used in core code? How can they be used for customizations?
Demonstrate how to create a customization using an event observer. How are observers registered? How are they scoped for frontend or backend? How are automatic events created, and how should they be used? How are scheduled jobs configured?
Describe the usage of bin/magento commands in the development cycle. Which commands are available? How are commands used in the development cycle?
How would you install and verify an extension by a customer’s request?
Describe module limitations. How do different modules interact with each other? What side effects can come from this interaction?
Determine how to locate different types of files in Magento. Where are the files containing JavaScript, HTML, and PHP located? How do you find the files responsible for certain functionality?
Determine how to use configuration files in Magento. Which configuration files correspond to different features and functionality?
Describe Magento’s dependency injection approach and architecture. How are objects realized in Magento? Why is it important to have a centralized process creating object instances? Identify how to use DI configuration files for customizing Magento. How can you override a native class, inject your class into another object, and use other techniques available in di.xml (such as virtualTypes)?
Demonstrate how to design complex solutions using the plugin’s life cycle. How do multiple plugins interact, and how can their execution order be controlled? How do you debug a plugin if it doesn’t work? Identify strengths and weaknesses of plugins. What are the limitations of using plugins for customization? In which cases should plugins be avoided?
Demonstrate how to configure observers. How do you make your observer only be active on the frontend or backend? Demonstrate how to configure a scheduled job. Which parameters are used in configuration, and how can configuration interact with server configuration? Identify the function and proper use of automatically available events, for example * _ load_after, etc
Describe the usage of bin/magento commands in the development cycle. Which commands are available? How are commands used in the development cycle? Demonstrate an ability to create a deployment process. How does the application behave in different deployment modes, and how do these behaviors impact the deployment approach for PHP code, frontend assets, etc.?
Describe cache types and the tools used to manage caches. How do you add dynamic content to pages served from the full page cache? Describe how to operate with cache clearing. How would you clean the cache? In which case would you refresh cache/flash cache storage? Describe how to clear the cache programmatically. What mechanisms are available for clearing all or part of the cache?
- Understand how to create a custom config file. Demonstrate an understanding of the Magento Configuration files framework
- Understand how to create a custom config file with validation and a unique node that is overridden on merging
- Understand how to create a config file with a remote schema
di.xml
- Plugins sort order, plugin on plugin scenario, plugin debugging techniques. Demonstrate an understanding of virtual types, shared objects, object instantiation process, proxies, factories
- How does an around plugin modify the plugin execution order?
- How do you debug a plugin that is not executed?
- Demonstrate Plugin on Plugin examples
- Which classes are instantiated outside of the ObjectManager so they cannot be customizing using di.xml?
- Demonstrate a use case for a virtual type (different instances of a class with a different set of arguments)
- Demonstrate an understanding of the events processing flow. Influence of Staging on the event processing
- What is a modification of the event processing mechanism introduced by the staging module?
- Create a new CLI command, emulate different areas within it
- Create a new CLI-command, configure it in di.xml, add optional/required options/keys
- Environment specification using Area class
- Environment emulation for a section of code
What are the benefits and drawbacks of on-premise vs. Cloud? How do you move to Cloud? How does Cloud influence project development? What features are only available on Cloud? What are the differences between Starter and Pro plans?
- Architecture in Magento 2 – What is it and how is it used in Magento Commerce?
- What are the benefits and costs of database sharding? What is the Varnish Full Page Cache and why is it better than the built in FPC?
- What are the basic responsibilities of templates and layouts in Magento 2? What are the basic steps for extending Magento 2 functionality with a code change or a third-party extension?
- How can the site design be configured using the options found in the Admin UI under System > Design > Configuration?
- What types of API does Magento Commerce have? What are the intended use cases for the different API types? What are the pros and cons of each type?
- What methods of authentication do the Magento 2 APIs support?
- Demonstrate the ability to manage credentials for the Magento API
- What are use cases for product attributes scopes?
- What is the effect of Website, Store, and Store View configuration scopes?
- Understand display of product catalogs in websites, stores, and store views
- Understand administration of websites, stores, and store views
- Understand localization taxes and pricing in websites, stores, and store views
- What are the main differences between Magento Open Source and Magento Commerce? What features are available only on Magento Commerce? (Commerce, Open Source, and B2B)
- Differences between Magento 2 Commerce, Magento 2 Commerce Cloud, and Magento 2 Open Source
- Advantages of Magento Commerce, Magento Commerce Cloud, Magento Open Source
- Staging and previewing
- Payment methods in Magento 2 Commerce
- Customer attributes and segments in Magento 2 Commerce
- Full page cache and indexing differences between editions
- All other differences between Magento Open Source and Magento Commerce
What are the infrastructure elements of a typical Magento installation (database, search, CDN, cache, sessions, etc.)?
- How are cookies used in Magento?
- What must be done to configure cookies on multisite Magento implementations?
- What is static content signing? References:
- Magento Open Source and Magento Commerce Documentation and Resources
- Magento U courses for Merchants and Marketers