Expected duration: 3 - 4 weeks Basic requirements ---------------------------- * Providing innovative and effective ideas to front end challenges * A digital specialist with high awareness of industry issues and trends, particularly in regard to accessibility, usability, and emerging technologies * Providing accurate timing estimates on work * Contributing to documentation (instructional, pitch and technical specification) * Working closely with non-technical staff particularly designers on a project-by-project basis
Essential skills --------------------- * Excellent knowledge of Magento front end technologies * Excellent knowledge of Drupal front end technologies * Excellent knowledge of Docker desktop set up - help will be available, but candidate must be self-sufficient. For example, see https://github.com/markshust/docker-magento - for a Magento set up * Excellent HTML5 and CSS3 skills * Developing cross-browser and cross-platform compatible solution with a solid understanding of progressive enhancement techniques * Experience with SASS/LESS – ideally SASS * Strong JavaScript programming skills – native & framework i.e. JQuery. * Excellent understanding of Web Accessibility (WAI-ARIA) * Experience working with version control systems such as GitHub * Strong Javascript programming skills - native ES6
Desirable skills --------------------- * NodeJS * Working with CSS frameworks such as Bootstrap or Foundation * Working with Grunt for automating tasks for Magento developments * Working with Webpack as our module bundler for Drupal developments * Understanding of modular JavaScript development * Understanding of React app development * Understanding of Rxjs framework
Notes --------- * The format of our commits: - feat: (new feature for the user, not a new feature for build script) - fix: (bug fix for the user, not a fix to a build script) - docs: (changes to the documentation) - style: (formatting, missing semicolons, etc; no production code change) - refactor: (refactoring production code, eg. renaming a variable) - test: (adding missing tests, refactoring tests; no production code change) - chore: (updating grunt tasks etc; no production code change) - Example: [Type]: [Client]-[Ticket Number] - [Title] -> [Summary] - feat: CL-2600 - New header - Added new icons
Our ticket system ------------------------- * We use Jira to keep track of tickets. Each ticket will be assigned and planned accordingly by the PMs. Sprints run weekly * If a ticket requires in-depth scoping, a call is usually scheduled to run through design and is then discussed. If it’s a minor task, no call is needed, just an estimate added to the ticket. The PM’s will either schedule a call to discuss or ask for an estimate * We update ticket status regularly and also leave a comment so PM’s are aware. When leaving a comment, ensure that it’s restricted to developers. Any questions, assets required for any task can be communicated via Slack
Our workflow ------------------- * Stand up every morning * Tickets will be planned in the weekly sprint and assigned * PM’s will order tickets in priority order otherwise they will let you know what has priority as this may change mid-week * Start work on a ticket, update ticket status * Any questions can be communicated via Slack in the appropriate channels or DM to the relevant team member * Complete work, create an open PR and tag Jason, Duleep and Denis as reviewers. Once approved, they will deploy to staging/QA * Once changes are deployed, tag relevant PM on ticket and update to internal testing