Senior Software Developer (UI Developer)
- Implement high quality and well-designed systems under the direction of a supervisor or project leader.
- Work with designers to understand UX requirements and be able to generate code to fulfil these requirements.
- Work with variety of server-side rendered or single page web applications to provide the capabilities that our business need.
- Write quality code with maintainability and quality in mind. Expected to write automated tests when adding new features or when providing a fix to bugs/issues.
- Work with a web API to connect the UI layer to wide range of existing SOAP/REST services.
- Participate in the project planning of software development tasks, testing, deployment and maintenance.
- Maintain currency in technological trends and directions through research/education/self-motivated technology experimentation.
- Strive to evolve our technical environment and practices.
Must have skills/Qualifications
- 3+ years of experience using current software development techniques.
- Understanding of how single page applications work
- Experience working with front-end single page applications interacting with back-end web APIs or microservices.
- Good understanding of HTML and general familiarity with UI development concepts like responsiveness, accessibility and analytics.
- Experience with testing strategies including unit, integration and end-to-end testing.
- Experience working with cloud-deployed enterprise applications, including design, technical maintenance and upgrades.
- Experience working collaboratively in an agile process environment.
Nice to have skills/ Qualifications
- Experience with Java
- Experience with Java development tools such as IDEs, Git, Maven and CI servers.
- Experience with Spring Framework, including Spring Core and Spring Boot
- Experience with SQL and NoSQL databases, SOAP and RESTful Web Services development.
- Experience with GitHub, JIRA, Confluence, Bamboo, Sonar.
- Experience with web components
- Experience with a frontend framework like: Angular/JS, React, or Stencil JS
- Excellent organizational, analytical and complex problem-solving skills.
- Ability to communicate and interact effectively with technical professionals, as well as users who are non-technical experts.
- Ability to work independently, prioritize work assignments, meet deadlines and produce an adequate volume of work.
- Ability to work and collaborate well in an agile project team.
- Resourcefulness, creativity, good judgement, consulting and documentation skills.
- Computer Science or Engineering degree or equivalent education.