ESSENTIAL FUNCTIONS AND RESPONSIBILITIES
In addition to the standard LYONSCG General Competencies, the Application Engineer will be evaluated quarterly on the following role-specific competencies & responsibilities.
Role-specific Position Knowledge
From a Functional Perspective, the TECH LEAD is responsible for:
- Develop and Test software code as directed by the Team Lead/Technical Architect.
- Fully understand the project documentation:
- Functional Requirements
- Technical Design
- Technical Feature Guides
- Fully understand the User Stories and Tasks that have been created in JIRA and/or Redmine/TeamView. The LEAD DEV communicates any questions to the Team Lead / Technical Architect / Project Manager / App Co for resolution.
- Attends and participates in all Project Execution meetings: Daily Scrums, Sprint Planning, Development Implementation Kick Off, Technical Close-Out, Project Post-Mortem, etc.
- Communicates with Team Members on both progress and impediments. Communication is critical. Use JIRA and/or Redmine/TeamView and update Tasks with critical communications.
- JIRA and/or Redmine/TeamView:
Understands how the SDLC is implemented inside JIRA and/or Redmine/TeamView. Responsible for:
- Understanding the User Stories and Tasks that have been created
- Create and Update Tasks
- Create Test Cases inside Tasks – For complex Tasks
- Enter in Time Estimates
- Enter in Actual Time
- Code Repository:
- Fully Understands Code Repository Theory (e.g. Gitflow)
- Use of SVN and GIT commands for Engineering
- Lyons Delivery Process:
Understands and adheres to the current version of the Lyons Delivery Process
- Post Discovery Review
- Sprint Planning
- Daily Scrums
- QA Review Meetings
- Project Retrospective Meeting
- Project Leadership
- Software Architecture Planningincluding
- In partnership with the TL and/or Chief Dev (FED or BED), prescribing the software design, including design patterns, that will be used for development of software modules, integrations, and customizations
- Providing direction to the FED or BED developers on which platform facilities, API’s, pipelines, scripts, and frameworks should be used for the features that they have been assigned to develop.
- Providing necessary documentation (formal as necessary) for a specific suggested implementation of a feature to quickly relay a message on how it will be implemented
- Development Sprint Planning, as necessary, with the TA and TL including
- Estimating tasks and deciding which user stories can be completed in each sprint
- Determining the branch and merge approach for each sprint
- Task Assignment & Resource Allocation
- Creating and defining tasks in TeamView/Redmine/JIRA with sufficient detail for the developer to be able to execute the task – including estimates for hours and deadline
- Assigning tasks to resources having appropriate capabilities
- Ensure resources are optimally utilized - not sitting idle
- Developer Coaching, ensuring each Developer is equipped for success such that:
- Developer understands the task objectives, requirements, constraints, approach
- Developer understands task estimates and deadlines
- Developer understands relevant references, resources
- Discuss potential challenges / risks
- Follow-up as appropriate with Developers to ensure work is progressing as required; identify and manage blocking issues, identify and manage required resources, etc.
- Developer Management
- As necessary (typically as a stand-in for the TL), running daily development scrums during development sprints.
- Coaching front-end and back-end developers in their engineering approach, and helping to clear roadblocks as they arise.
- Performing code reviews with FED or BED team members, submitting inspection forms and signoff on the integrity of the work checked in to the project.
- Provide guidance and governance around the LYONSCG Delivery Standards in partnership with the TA, TL, and PM/AC.
- Strong Communications
- Regular TL and Chief DEV (FED or BED) communications regarding development impacts to scope, budget or timeline.
- Regular TL and Chief DEV (FED or BED) communications regarding requirements and architecture.
- Consistent communication with FED or BED Developers regarding task requirements, approach, and status.
- Periodic client communications (client meetings, client written communications, client technical advisement, consultative professionalism).
- Standards Governanceincluding
- Knowing & understanding the relevant standards and practices
- LYONSCG implementation standards & practices
- General industry best practices
- Best practices for the specific platform and related technology
(i.e. SFCC/Demandware, Magento, hybris, etc.)
- PCI-DSS and Secure Coding
- Communicating the relevant requirements to the FED or BED Development team.
- Enforcing the relevant requirements through code reviews and other governance techniques.
- Escalating issues as necessary through the TL, TA, and PM/AC.
- Creates and submits own individual time sheets on a weekly basis in compliance with LYONSCG policies & procedures.
- Creates and submits own individual expense reports in compliance with LYONSCG policies & procedures.
- Answer all communications (phone calls, emails and other communiqués) in a timely fashion, but in no event more than 24 hours from the receipt of a communication
- Inform the Project Manager and respective Technical Architect of critical project issues within the same business day that such issues arise
- Ensure time reporting and expense reporting is performed in a timely fashion, and as required by LCG accounting
- Perform all work in a professional and expeditious manner with an eye toward uncompromising customer service
- Participate ininternal communities for knowledge sharing and thought leadership. These include
- platform-specific skype chats & meetings
- role-specific skype chats & meetings
- organizational group-specific skype chats & meetings
- Contribute to Marketing Thought Leadership, such as through blog posts, white-papers, webinars, conference papers & presentations, etc.
- Contributions to internal code repositories such as reference applications and LEA.
- Participation in internal initiatives such as SWOT initiatives and improvements to internal processes and methods.
Performs other duties as required or assigned which are reasonably within the scope of the duties enumerated above.
* This list of essential responsibilities and functions is not exhaustive. LYONSCG reserves the right to supplement this list, particularly if the scope of duties in this position changes.
EDUCATION, TRAINING, AND EXPERIENCE
- B.S. Computer Science/Software Engineering or equivalent Experience
- Minimum 5 years recent experience in web development
- Minimum 3 years recent experience in Ecommerce project.
- Minimum 2 years recent experience in the relevant platform (i.e. Demandware, Magento, hybris, etc.)
SKILLS, KNOWLEDGE, AND ABILITIES
- Expert in developing web applications for the relevant focus (i.e. Front-End or Back-End) and platform (i.e. Demandware, Magento, Hybris, etc.)
- Proficient in managing the administration of the relevant platform (i.e. Demandware, Magento, hybris, etc.)
- Proficient in using and managing version control through SVN and/or Git – including planning & creating branches, and performing merges.
- Proficient in effectively documenting complex functionality in code and documentation.
- Ability to follow, enforce, and help define development standards.
- Current developer certification in the relevant platform (i.e. Demandware, Magento, or Hybris) or ability to obtain such certification within 3 months of hire.
- Solid understanding of Object Oriented concepts.
- Solid understanding of the MVC paradigm.
- Strong problem-solving skills, creative thinking, critical thinking.
- Strong communication skills – verbal and written (documentation, code, email, etc.)
- Strong relationship building and interpersonal skills.
- Self-starter, ability to work independently with minimal supervision, and ability to work in a fast paced environment.
- Strong ability to learn and apply new skills quickly.
- Proven track records of meeting and exceeding goals.
- Proficient to lead & supervise application development teams.
- Ability to lead effective scrum meetings.
- Ability to perform Release & Sprint planning.
- Strong organization skills – scheduling, prioritizing, planning, tracking.
- Ability to maintain confidentiality as appropriate.