Software Developer

Position: Software Developer ("SD")

Software Developer (“SD”) in charge of developing software for Theralase medical laser systems (“Products”); including: specifications, coding, developing, implementing and optimizing the measurement, control and/or user interface software in C# or LabVIEW format. 

Reports to: Engineering Manager 

Duties and Responsibilities:

  • Meet with engineering and senior managers to understand and develop a detailed software specification for the measurement, control and/or user interface software of the Product 
  • Write and finalize software specification, utilizing tools such as Unified Modelling Language (“UML”), static and functional mockups, wireframe design, flowchart and Failure Mode and Effect Analysis (“FMEA”) to present to engineering and senior management for review and approval prior to coding and developing 
  • Upon completion of coding and developing, prepare a Software Verification and Validation (“SV&V”) engineering test plan and execute SV&V testing to finalize a SV&V Engineering Test Report that addresses the software’s ability to achieve: design intent, performance, safety, efficacy, robustness, reliability, stability, cost and timing for senior manager review and approval prior to software release and implementation 
  • Release version-controlled software, monitor and continually optimize its use in the field to address customer concerns, performance, safety, efficacy, robustness, reliability and stability 
  • Design and implement automated feedback systems to be notified of software bugs in version-controlled software optimizations 
  • Troubleshoot, implement and verify software fixes in a timely manner for all software bugs detected during use of version-controlled software optimizations then pending re-completing the SV&V, implement the optimized software for all customers 
  • Maintain and document software optimizations and provide release notes to file and to customers for Products 
  • Provide ongoing software support for Engineering, Production and Service teams 
  • Design, develop and validate Graphic User Interface (“GUI”) and Structured Query Language (“SQL”) database applications in a Windows-based environment for Products 
  • Design, develop and validate cloud-based database applications for engineering and senior managers to modify administrative variables (i.e.: hardware and usage pricing structures, error message limits, transfer function and generate usage reports) and for clinical users (to modify their user preferences, payment method and account information) 
  • Design, develop, validate and implement version-controlled firmware for Products 
  • Optimize and validate legacy software via SV&V process 
  • Write software specifications for external contracted resources and successfully manage and document their performance to complete all required coding, developing and implementing version-controlled software to meet/exceed the project objectives, cost, and timing 

Skills and Qualifications Required:

  • Ability to achieve and/or surpass engineering and senior management defined project software specifications; including: design intent, performance, safety, efficacy, robustness, reliability, stability, cost and timing 
  • University degree in computer engineering with 5+ years of professional experience specifying, coding, developing, implementing and optimizing software for medical devices 
  • Professional Engineer (P.Eng.) designation preferred 
  • Expert experience with C++, C#, Java, SQL (Microsoft SQL Server Preferred) and LabVIEW in designing GUIs for medical devices 
  • Experience in developing and managing software using Agile and/or Waterfall development processes and methodologies 
  • Experience with Jira and Confluence 
  • Experience with object-oriented design, design patterns, data structures, database design and algorithms 
  • Experience with Integrated Development Environments (“IDEs”) (Microsoft Visual Studio preferred) 
  • Experience with web page development including JavaScript, HTML 5, CSS 
  • Experience in creating and optimizing software specification, flowchart, FMEA design requirements 
  • Computer literate in Microsoft suite of products (Office, Excel, Outlook, Word, Power Point) 
  • Ability to accurately estimate objectives, milestones, cost and timing to prioritize and deliver on software specifications 
  • Ability to evaluate and clearly communicate (written and verbal) technology concepts and ideas to engineering and senior managers and colleagues 
  • Full stack client-server development including: front end, business logic and database management 
  • Strong oral and written communication skills in the English language 
  • Ability to learn, remain calm and focus on the timely completion of objectives 
  • Organized, self-motivated and professional in dealing with colleagues and senior managers 
  • Self-starter with the ability to work independently under minimal supervision 
  • Team player with a proven ability to build positive relationships at all levels of an organization 
  • Ability to prioritize in multi-tasking environment with excellent attention to detail and accuracy 
  • Enjoy working in a challenging and fast growth environment 
  • Flexible and accountable working in a team environment 
  • Positive, “Can-Do” attitude, with a strong belief in personal accountability 
  • Strive to constantly improve and develop skills both personally and in assisting their colleagues to do the same 

Compensation:

$70,000 to $90,000 base, commensurate with experience + performance bonus + employee benefits (after 3 months) + stock options, subject to board of director approval. 

Theralase® is committed to creating a diverse environment and is proud to be an equal opportunity employer. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status. Theralase® is also committed to compliance with all fair employment practices regarding citizenship and immigration status.

 

Apply for this position

Please submit your application here:

Software Developer Job Application