INTERMEDIATE SOFTWARE ENGINEER
A career at Codan Communications is an opportunity to be part of a dynamic global business, reaching out to all corners of the world, helping people communicate.
Codan Communications is a leading designer and manufacturer of premium communications products for Land Mobile Radio applications. Trusted by the world’s largest mission critical, security, military and humanitarian agencies, we’ve built our reputation for reliability over 60 years in communications, in some of the toughest conditions on the planet. Our core values of can-do, high performing, customer driven and openness and integrity, reflect not only our business, but our people.
Location: Victoria, British Columbia, Canada
Position Type: Permanent full-time
We are seeking an intermediate Software Engineer to join our dynamic team of developers. In the position you will support the design and development of software for Land Mobile Radio (LMR) products, acting as a key contributor to the design and implementation of software products that operate as individual nodes within a network. This position assumes the candidate has a strong aptitude for Object Oriented design and familiarity with networking and communications protocols and principles. The position primarily involves development using the Java Programming Language but may also require some development using C and C++ programming languages.
- Assist in requirements analysis and software architecture with other members of the Software Engineering Team
- Contribute to all phases of software design, development, and testing
- Assist with planning during all stages of the software development life cycle
- Provide maintenance and support for completed products
- Ensure business processes and tasks undertaken are consistent with the company Quality Operating System
- Contribute to a collaborative team and work environment to achieve high performance, ongoing learning and improvement
Qualifications, Knowledge, Skills & Experience:
- B.Sc. in Computer Science, Electrical Engineering or Software Engineering or equivalent, minimum 3 years experience
- Java and/or C & C++ programming experience
- Solid understanding of Object Oriented Programming and Design
- Understanding of agile and scrum development processes and methodologies
- Experience with version control systems and other development tools (git, gradle, intellij, jira, confluence)
- Knowledge and experience with TCP/IP networking
- Good oral and written communication skills
Experience with IntelliJ, Git, Gradle, JUnit, GoCD, Linux kernel development, VB.net, JIRA, Confluence, Crucible, FishEye, RF, telecommunications, networking, real time and distributed systems, and signal processing are all assets.
- You are tenacious and love continuous improvement, with proven success at digging deep to find solutions to tough problems
- You have an eye towards optimizing performance and improving product quality
- You enjoy learning and sharing ideas with other like-minded folks and mentoring new engineers
- You are a quick study who is able to figure out complex systems