Senior Back-End Software Developer
Position
Intermediate to Senior Back-End Developer
Place of Work: Burlington, Ontario - Hybrid Position
ComQi Canada is the technology division for ComQi Inc., a global provider of in-venue customer and employee engagement technology and John Ryan, a global provider of customer engagement technology targeted at the financial sector. Our software products influence consumers at the point of decision making using a wide range of digital touch-points including digital signage, touch-screens, kiosks, mobile phones, web, and social media. ComQi Canada’s mission is to provide an end-to-end client engagement solution that provides our clients with rapid ROI and our end users an
enjoyable user experience to help drive product sales. We power global brands including GameStop, Famous Footwear, The Gap, Hudson and Six Flags Amusement Parks and financial institutions like PNC Bank, Fifth Third Bank and BBVA.
ComQi Inc. is headquartered out of New York, with R&D facilities in Burlington, Ontario.
The Opportunity
We are currently looking to extend our Burlington, Ontario R&D team with a developer who can help us both enhance and extend our products. As a Software Developer, you will work as part of a team to deliver high-quality software. You will be involved in all aspects of the software development process, from specification through development to maintenance.
The successful candidate will function in a multi-faceted role that offers the opportunity for career growth, intellectual stimulation, creative problem solving, and a chance to deliver more industry firsts.
Responsibilities
- Design and implement middle-tier and back-end software components, using Container based technologies and
SQL - Code primarily in JAVA, working with JEE and the Spring Framework
- Work within an Agile software development methodology
- Work with other team member to implement product requirements and deliver high quality software
- Adhere to and enforce coding standards and conduct design and code review when required
- Act as a technical resource to front-end developers, customers, QA and internal business clients as needed
- Opportunity to get involved in front end web-development using Angular and JavaScript frameworks
- Act as a senior / lead resource in the design and development of complex software systems
- Assist in resolutions of production issues as required
- Assist and lead the development of automated testing frameworks for core component and services.
Desired Skills and Experience
- 5+ years of progressive experience in software development
- Strong self-starter and quick learner; able to work both independently and collaboratively on complex projects
- A Passion for well designed, efficient, and scalable quality software solutions
- A Strong understanding of the JAVA language is a must
- Solid and demonstrable understanding of Java/JEE (formally J2EE) Application Service Layer technologies, specifically: EJB, JMS and MDB
- A solid understanding of ORM, specifically Hibernate
- Capable of writing efficient and scalable SQL, preferably working with MySQL (including Stored Procedures)
- A good understanding of Database Transactional complexities, including strategies to avoid race conditions, deadlocks etc.
- A working knowledge of the Spring Framework, specifically: Spring Security, Spring Controllers, and the implementation of Spring RESTful web servicesAn understanding of Microservice/SOA Architectures, including best practices, design patterns, distributed
architectures, HA and Load balancing principals - A working knowledge of Container based technologies, preferably JBoss (now WildFly) and Tomcat
- Familiarity with various security and authentication paradigms (SSO, MFA etc.)
- Good development habits including unit testing, continuous integration, and automated testing
- Understands the importance of well documented code
- Possess excellent communication, problem solving and analytical skills; strong team player who can articulate their thoughts well
- Self learner. Ability to review / understand complex code with minimal supervision
- A Bachelors degree or Diploma in Computer Science, Engineering, or Mathematics
Nice to Have
- Familiarity with Containerization technologies (Docker)
- Familiarity with CI/CD processes and tools (Kubernetes, Ansible, Terraform)
- Familiarity with Security Architectures / Best Practices (SSO, MFA, SSL Certs)
- Familiarity with NoSQL technologies, preferably Lucene/Elasticsearch
- Familiarity with the Eclipse or IntelliJ IDE Desktop software
- Familiar with software version code management technologies, specifically SVN and GIT • Familiar with build/development tools, specifically Ant, Maven, and Jenkins
- Prior knowledge in video, image and audio software technologies
What ComQi Will Provide
- Competitive Salary
- Full Benefits Package including Medical and RSP matching.
- Flex hours may be available.
- Experienced and innovative team where your efforts will be appreciated and recognized.
We are currently working in a hybrid work environment, both remotely and in office - i.e., attendance in the office may be 1 or 2 days every 1 or 2 weeks in Burlington, Ontario, for meetings, bi-weekly sprint planning/retrospectives, collaborations and workshops, etc. Living within commuting distance to Burlington, Ontario is required.
ComQi makes certain there is an equal employment opportunity for all employees and applicants for employment, including persons with disabilities. In compliance with AODA, ComQi will strive to provide accommodation to persons with disabilities in the recruitment process upon request.
Please provide your resume with a cover letter stating your salary expectations to HR@ComQi.com. While we thank all candidates for applying, only those selected for an interview will be contacted.