Senior Software Engineer
· This job is an integral member of an agile software engineer team responsible for building scalable software applications across all digital channels to serve our customers. The incumbent will be responsible for taking an enterprise-wide, architectural view of the solutions and the technical execution of products using the technical stack that best meets the needs of the platform. The incumbent, and team, will be involved in every aspect at part of the software application build process from idea generation, business analysis, technical design and software development using the latest technologies and design patterns.
o Responsible for designing and creating engineering specifications for software applications and programs. Responsible for designing & writing code that adheres to coding standards set forth by the Principal Engineers. Performs code reviews.
o Responsible for idea generation, exploring and implementing appropriate technical solutions to achieve the required product features, as well as monitoring technical process against project plan while safeguarding functionality, scalability and performance.
o Apart of an agile work team and responsible for participating in all scrum ceremonies, assisting in sprint planning and completing required sprints in the development through final execution of software applications/programs. Communicate any issues/blockers to the Scrum Master in a timely manner.
o Drive story creation (i.e. DoD, Acceptance Criteria, estimation). Create Tasks for their stories in RTC or Jira, and updates status and assignment accordingly
o Monitor work against production schedule and provide progress updates and report any issues or technical difficulties to lead developers on a regular basis.
o Mentor other associate and intermediate software engineers as needed.
o Other duties as assigned or requested.
o Bachelor' s Degree in Computer Science, Computer Engineering or a related field
o Master' s Degree in Computer Science, Computer Engineering or a related field
o 5 - 7 years proficiency in design and analysis of algorithms, data structures, and design patterns in the building and deploying of scalable; highly available systems
o 5 years of understanding of web services technologies such as REST, HTTPS, JSON
o 5 years in defining system architectures and exploring technical feasibility trade-offs for optimizing short term execution while planning for long term technical capabilities
o 7 - 10 years of working with a variety of technology systems, designing solutions or developing applications in healthcare
o 5 years of working with Machine Learning esp. in Natural Language Understanding, Machine Translation, Deep Neural Networks and related fields
o 5 years of translating design mockups, prototypes and user stories into working applications
o 5 years of ability to produce code that is fault-tolerant, efficient, and maintainable
o Demonstrated ability to achieve stretch goals in a highly innovative and fast paced environment
o Have experience working with agile methodology of scrum
o Ability to speak and write English fluently and idiomatically
o Interest and ability to learn other programming languages as needed
o Knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, unit testing, code reviews, source control management, build processes, testing, and operations
o Strong track record in designing and implementing large scale consumer facing applications
o Strong sense of ownership, urgency, and drive
o Demonstrated passion for user experience and improving usability
o Experience and willingness to mentor junior engineers and help develop their skills and leadership