Senior Java Developer Apply Now
SimplePin
Montréal, QC
We are now looking for a Senior Java Developer to join our software design and development team in Montreal.
If you thrive on challenges and seek growth, then we want you on our Development Team! Our environment is built on trust, openness, and growth. We offer great benefits, excellent health insurance, flexible hours, work-from-home and a fantastic vacation package.

Purpose
The Senior Java Developer directly oversees internal development practices as well the team of Java Developers to ensure the successful execution of their functions. The Senior Java Developer is responsible for, but not limited to,

Duties, responsibilities and tasks
Evolve and enhance our core SimplePin application
Participate in the analysis, elaboration, and estimation of customer requirements and specifications
Design, develop, and deploy new production-quality features and functionality that meet customer requirements
Create and maintain technical documentation
Maintain and improve existing code, including monitoring for backend errors, reporting errors to internal bug tracking system
Educate, guide, and interact with our customers’ technical staff throughout their development and integration efforts
Collaborate with application support to analyze, troubleshoot, reproduce, and resolve production issues reported by customers
Work with other team members on release planning and deployment activities
Innovate and improve development and implementation processes and tools by advocating technologies and designs that promote efficiency, reliability, and reusability
Be proactive, facilitate knowledge sharing, and continually improve our activities
Perform design and code reviews, assist with refactoring, and provide guidance and mentoring to other developers
Responsible for day to day tasks of Development team as well monitoring, delegation and resource allocation
Provide technical solutions to Project/Product Managers and company Solution Architect
Ensure all personal deliverables are done with highest level of quality
Validate development team deliverables if they done according specifications, on time and with highest quality
Ensure that the goals and objectives are accomplished within defined time-frames and allocated budgets
Analyze business requirements, provide the feedback to stakeholders.
Plan, implement and support continuous integration processes
Perform technical investigation of customer support issues and provide resolution
Track time and deliver time-sheets on weekly basis
Assist in improving our business processes
Participate in recruitment process
Perform technical research and present innovative solutions which contribute to company success
Other tasks as assigned
Skills, competencies and qualifications
7+ years’ software engineering and IT experience
Experience using software best practices like Test-Driven Development (TDD) and Continuous Integration (CI)
Strong debugging and analytical skills
Knowledge of relational databases and SQL; and cryptography and security
Worked as part of Scrum teams or similar iterative Agile development methodologies
Bachelor’s or Master’s degree in software engineering or computer science
Practiced continuous improvement and promoted knowledge sharing
Strong organizational skills, capable of managing assigned tasks and meeting deadlines
Excellent leadership, interpersonal, communication, collaboration, and writing skills
Ability to conduct technological analyses and research
Excellent communication skills
In-depth knowledge of web systems architecture, design and development
Experience with project management, including AGILE, SCRUM and Waterfall
Proactive problem solver
Multi-tasking capabilities with ability to adjust to paced environment
Works under minimal supervision, with general guidance from technical management
Attention to details
Fluent in spoken and written English is a plus
Technical skills
Extensive experience in Core Java, J2EE, and Java frameworks such as Spring, and Hibernate
Extensive experience with MVC frameworks, OOD, Design Patterns, Testing frameworks
Strong programming expertise in XML technologies and Web services
Database design and development with practical knowledge of PostgreSQL, MySQL, Oracle
Extensive experience in SQL, PL/SQL, store procedures
Proficiency in Unix Operation Systems with experience in Linux / Bash scripting
Working knowledge of TCP/IP, networking, security, SSL, SSH
Familiarity with public Cloud providers (AWS, GCE, Azure)
Knowledge of Apache Wickets framework
Experience with test automation tools such as Selenium
Experience with Apache and NGINX configuration
Knowledge of Atlassian products, including JIRA, Confluence and Service desk.
Understanding of SOAP, experience with RESTful, JQuery, JSON other APIs
Experience in distributed applications a plus.
Experience in HTML5 technologies, Angular, Bootstrap, CSS, Ajax and JavaScript/jQuery.
Practical knowledge of development and build tools such as Jenkins, GIT, Subversion, Maven, Ant, Gradle etc.)
Practical knowledge of Test-Driven Development (TDD) and Continuous Integration (CI)
Experience with financial math is a plus
Understanding of Linux containers and orchestrators (Docker, Kubernetes) is a plus
Reports to
Chief Technology Officer (CTO)
Department
Software design and development