Senior Software Engineer

Job Title: Senior Software Engineer
Category: Technology
Location: CaringBridge Office

Download Job Description (PDF)

Organization Summary

CaringBridge is a nonprofit 501(c)(3) organization offering free personalized websites to those wishing to stay in touch with family and friends during a significant health challenge. Our mission is to amplify the love, hope and compassion in the world, making each health journey easier.

Primary Duties and Responsibilities

  • Architects, defines, develops and assists in overseeing software engineering effort on full range of applications (mobile, web and business intelligence) based on business needs and requirements.
  • Collaborates with business owners and subject matter experts to identify key business objectives relating to CaringBridge mobile and business intelligence applications and technology.
  • Supports the analysis of system specifications and translate system requirements into task specifications.
  • Reviews code and software module designs and components to improve quality and reuse.
  • Creates documentation to support the development of applications (requirements, design documents, testing document, etc.).
  • Creates unit tests for developed applications to support quality assurance.
  • Researches and identifies application opportunities around performance, scalability and maintainability.
  • Provides consult and mentorship to software engineering team and others in the organization concerning operation or maintenance of software.
  • Provides back-up support for others in technology team as need arises.
  • Establishes and sustains interactive relationships with external vendors and contacts to result in favorable networks to support the current and future goals of the organization and to benchmark practices/results to maximize organizational effectiveness.
  • Stays current on market, competition and trends including tactics, field concepts and practices applying them to strategies when applicable.
  • Keeps manager informed of important developments, potential problems, and related information necessary for effective management.  Coordinates/communicates plans and activities with others, as appropriate to ensure a coordinated work effort and team approach.
  • Performs related work as apparent or assigned. 

Experience and Qualifications

To perform this job successfully, an individual must be able to perform each essential duty satisfactorily.  The requirements listed below are representative of the knowledge, skill and/or ability required.  Reasonable accommodations may be made to enable individuals to perform the essential functions.

  • Bachelor’s degree or equivalent experience in computer science, technology, or related field.
  • 7-10 years of experience in computer science, technology or position of similar responsibilities.
  • Certifications in PHP, MySQL, Linux and BI strongly preferred.
  • Strong understanding of software development methodologies (SDLC and Agile)
  • Strong web application software engineering experience with PHP, HTML5, CSS and JavaScript.
  • Strong mobile application software engineering experience with iOS, Android or Blackberry platforms.
  • Strong database development experience with MySQL and InfiniDB.
  • Strong understanding of network protocols, socket programming, concurrency and multi-threading.
  • Strong understanding of OOP, memory management, file I/O and design principles.
  • Experience working in high availability environments.
  • Experience working within an agile environment.
  • Experience with Distributed Version Control and/or Subversion
  • Experience with Linux
  • Strong self-starter with a record of success.
  • Strong collaboration and teambuilding skills.
  • Excellent organizational and planning skills.
  • Ability to cope with the rapid pace and constant change associated with the industry.
  • Ability to successfully manage numerous projects simultaneously.
  • Ability to communicate effectively, both orally and in writing with personnel and outside contacts.

This document is intended to describe the general nature and level of work being performed by people assigned to this position. It is not intended to be an entire list of all activities, tasks and skills required of people in the position.

To Apply:
To respond to this opportunity, please send your resume and salary requirements to:
jobopenings@caringbridge.org
- or -
CaringBridge
Attention: HR
1715 Yankee Doodle Rd. Suite 301
Eagan, MN 55121