Imagine Communications

  • Senior Software Developer

    Job Locations CA-ON-Waterloo
    Posted Date 1 month ago(5/21/2018 9:11 AM)
    Requisition ID
  • Company Overview

    Senior Software Developer

    Waterloo, ON



    Every day, Imagine Communications is delivering billions of media moments all over the world — anywhere, anytime and on any device.  Imagine Communications delivers innovative, end-to-end media software and networking solutions to over 3,000 customers in more than 185 countries, including the top broadcast facilities and the most technologically advanced sports and live-event venues.


    As a member of the software development team, you will work in a collaborative team environment that encourages you to perform at your best, and challenges you to engineer elegant solutions to complex problems. You will work with other senior developers and technical leads to design and develop robust and scalable software components and applications for high-volume and performance critical workflows. You will be an accomplished developer, with applied knowledge of object-oriented design with appropriate use of best practices, design patterns, and frameworks and an appreciation of the implication of software designs and implementation choices on application performance and maintainability.  Your efforts will shape the future of world-class software that keeps major broadcasters on-air every day.

    Specific duties include but are not limited to

    Key Responsibilities:

    • Responsible for technical designs of new components and features
    • Collaborate on projects with the architecture team
    • Develop applications and core software components to be reused across multiple products, including services for:
      • Video and audio manipulation and compositing
      • Effect scheduling and triggering
      • Media encoding/decoding
    • Develop unit tests
    • Conduct research on emerging technologies, and implement prototypes and proof of concept projects
    • Perform regular code reviews
    • Work closely with other development team members in a dynamic, fast-paced, and inviting environment
    • Work with QA & technical support teams to resolve issues identified by internal testing & customers in the field
    • Write readable, maintainable, and efficient code.


    Key Requirements:

    • Bachelor’s degree in Computer Science, Computer Engineering, or related discipline
    • Strong C++ skills


    • Strong Java development skills
    • Object-oriented design experience
    • 3+ years professional software development experience and multi-threaded application development experience
    • Knowledge of software engineering principles and best practices
    • Proven ability to work independently; designing, developing and deploying solutions, and to deliver projects on time with minimal direction
    • Excellent team player
    • Versatile & adaptable to new tools & challenges
    • Excellent troubleshooting and debugging skills
    • Well-developed oral & written communication skills
    • Video and audio knowledge – file formats, codecs, industry standards, etc.
    • Experience with network (socket) communication
    • Experience with cloud/virtual machine-based computing, provisioning and orchestration   
    • Knowledge of  XML and XML web services
    • Applied use of design patterns
    • Expert with Visual Studio, Mercurial development tools
    • Experience in Agile work environments

    Imagine Communications offers an engaging team-oriented culture and a competitive compensation/benefits package.


    Imagine Communications is an equal opportunity employer:  M/F/D/V


    Sorry the Share function is not working properly at this moment. Please refresh the page and try again later.
    Share on your newsfeed

    Connect With Us!

    Coming Soon!