This project defines topics a member of Emotion should be familiar with.
Topics are presented from the easy-basic one to the more complex one.
The topics are composed in the modular way. Which mean you position yourself in the company based on the modules you get familiar with. Basic modules - first, more complex ones - on the top of the basic ones. That's how you build your knowledge.
Do not repeat a topic within different modules while adding the new. Simply pick the module which is the best fit and place the topic there. If such placement is not possible then split the topic into smaller parts and place each to the best-fit module.
You are welcome to discuss the topics found here within Slack workspace of Emotion. ;)
Want to contribute to this project? You are more than welcome to do so!
You should not make to any position at Emotion while this module is not completed.
- Communication:
- Web browsers:
- Cache
- Incognito mode
- Useful plugins
- Time management:
- Data management:
- Data protection, security:
- DLA Piper - law firm that simplifies law information, easy to compare different countries by the data protection law applied to each. Be careful, it may lack some info, may not be up to date. Get a sense on how law differs in particular countries you are about to be working with.
- European Union law - usually applies to all EU countries, each EU country may add some extra law on top in their local law base. Make sure you review the latest version of each document provided down bellow:
- Data protection - page of EU institution focusing on presenting data protection law. This page may give you a better sense on what EU data protection law is about from the regular user point of view. Just browse the page. At the end, you shold be finding the following law docs:
- Lithuanian law
- LRS institution. Note: make sure you see the latest version of each doc by clicking on "Galiojanti suvestinė redakcija", read:
- Websites of other law-and-data-security-related Lithuanian institutions. Browse the websites given down bellow, get a sense of the law introduced, get to know if any of the law you find applies to your particular project, if so - read that extra law in addition.
- Norwegian law
- The Norwegian Data Protection Authority (DPA) - a public authority financed by the Norwegian government and administratively subordinate to the Ministry of Local Government and Modernisation.
- Software development with Data Protection by Design and by Default - read guidelines to help organisations understand and comply with the requirement of data protection.
- The Norwegian Data Protection Authority (DPA) - a public authority financed by the Norwegian government and administratively subordinate to the Ministry of Local Government and Modernisation.
- Sensitive data storage software:
- LastPass - online storage
- End User Toolkit: https://support.logmeininc.com/lastpass/help/lastpass-end-user-toolkit
- End User training: http://link.lastpass.com/InpUsrLpEmb
- Admin training: http://link.lastpass.com/InpAdmLpEmb
- Help Center: https://support.logmeininc.com/lastpass
- KeePass - offline storage
- LastPass - online storage
- Identificators: SKU, EAN, QR
- Categorization: Google Taxonomy
- Data protection, security:
- Doc management:
- Google docs
- Microsoft Office
- LibreOffice
- OpenOffice
- PDF readers
- Project management:
- Agile
- Jira
You should not make to a non-technical member position that directly communicates to technical member without completing this module. For example, non-technical people like HR and lawyers are ok without this module. However, project managers directly communicating to technical staff, or technical staff by itself must know this. This is so due to the fact that sometimes near-technical managers do some basic technical tasks that require a bit deeper technical knowledge. For example, project managers accept articatcs produced by technical people and performs some basic tasks on these (e.g. finds occurences of the specific text pattern in a given file, replaces a text, checks if the file provided by the customer is valid, etc.). We need the common ground between non-technical and technical people. And here it is.
- Management:
- Github
- Bitbucket
- Gitlab?
- Tests, QA:
- Zephyr
- Web application debugging via browser:
- Developer tool, debug, etc.
- Connection:
- SSH, Public Key Infrastructure
- VPN
- Authentication + Authorization: ACL, Oauth 2, Google auth, tokens
- HTTP: Statuses, Caching, Cookies
- Postman
- Docs:
- Encodings: UTF8: mb3, mb4; ASCII
- UML, tools to draw
- Markdown
- robots.txt
- JSON
- Yaml
- XML
- Sphinx (documentation)
- Work with files, including files validation:
- Data diff tools (how to compare files, text, etc)
- Basics on file-archive formats: 7zip, zip, rar, etc.
- Basics on file-image formats: jpg, jpeg, png, gif, etc.
- Log reading software (glogg)
- Regural expressions
- Translations:
- How translation services work, e.g. crowdin.com
- Internalization vs. Localization (i18n/l10n)
- Versioning:
- Versioning: Semantic, Romantic
- Git
- Git flow
- Virtualization
- Virtual Machines basics: VMware Player, Virtualbox (incl. VirtualBox Guest Additions), etc.
- Hypervisor: Type1, Type2
You should not make to any technical position (front-end developer, back-end developer, devops) while this module is not completed.
- Best practices:
- SOLID principles
- OWASP
- Linux:
- Bash (CLI usage, scripting)
- Linux: Supervisor
- Linux: environment variables (incl. PATH)
- Linux: permissions (chmod, chown)
- Ubuntu
- Networking, connections:
- DNS
- curl, guzzle
- SMTP
- API: REST, SOAP
- Wireshark
- Security:
- Security: SSL, TLS, HTTPS
- Data:
- Serialization vs. Normalization
- DB:
- MySQL clients (e.g. MySQL Workbench)
- Relations to front-end:
- DOM
- Relations to DevOps:
- Docker
- docker-compose
- AWS
- AWS: S3
- AWS: EC2
- AWS: Elasticsearch Service
- AWS: CloudWatch
- AWS: OpsWorks
- AWS: RDS
- AWS: CloudFront (CDN)
- Testing, QA:
- Automatic tests basics (main concepts, e.g. mocking)
- Jmeter
- Docs:
- PDF document basics (internals)
This module is common to Magento and Akneeo PIM developers - they all should complete this module.
TBD. The module must comply with: Zend Certified PHP Engineer.
- Best practice:
- Symfony Coding Standard: https://symfony.com/doc/3.4/contributing/code/standards.html
- Data, docs:
- Archiving: phar, zip
- phpDocumentor
- PHP
- PHP: Composer / Packagist / private repos
- PHP: SPL
- PHP: PSR
- Libraries:
- Doctrine ORM
- Monolog
- ImageMagick / imagick
- Dompdf
- Debug:
- Xdebug (debug, profile, trace, KCachegrind)
- QA:
- phpSpec
- Behat
- phpUnit
- MySQL
- Elastic Stack
- ElasticSearch
- Kibana
- Filebeat
- Connections, HTTP servers:
- Apache, including mod_rewrite
- NGINX
This module is required by front-end developers only.
- HTML
- CSS
- CSS: BEM
- JavaScript / ES*
- Typescript
- Yarn
- Node.js, including npm
- Webpack
- Babel
- RequireJS
- jQuery
- BackboneJS
- Underscore.js
- ESLint
- Polyfill
This module is required by Akeneo PIM developers only.
TBD. The module must comply with: Symfony Certification, Akeneo implementation specialist certification, Akeneo developer certification
- Symfony
- Key components of Symfony: Twig, Swift Mailer, Assetic
- Akeneo PIM Community Edition
- Akeneo PIM Enterprise Edition
- Google Cloud Vision
- InRiver PIM
- Pimcore PIM
- Adobe Scene7 DAM
- IBM MQ (formerly IBM WebSphere MQ) + MQ explorer
This module is required by Magento developers only.
- TBD
This module is required by DevOps only.
- Chef (cookbooks in Ruby on Jenkins)
- Jenkins