Description

Job Description

  • Design sophisticated software components, services, and applications. You’ll write design documents and review them with your software engineering and architecture peers, incorporating and quickly iterating on the feedback.
  • Lead the delivery of your projects to production. You’ll follow best practices including writing high quality code, developing unit, functional, and performance tests, and creating end-to-end deployment pipelines to production to maintain a fast velocity.
  • Integrate your software with other distributed systems and shared APIs across Client. You’ll work closely with partner teams to help evolve their systems to make all of our services more re-usable and resilient.
  • Hire and develop others by mentoring junior software engineers and peers, and proactively sharing your expertise and interests with others.
  • Partner closely with multi-functional teams including product management, data science, and UX design.

Qualifications

  • Experience designing and building complex software systems end-to-end which have been optimally delivered to production. You’ll have supported these production systems through on-call rotations.
  • Expertise in at least one back end and one front end language (C/C++, Java, C#, Python, REACT) including object-oriented design. You should be proficient in data structures, algorithms, runtime complexity, API and database design, as well as unit and functional test methodologies.
  • Experience in system design of both new and existing systems. You should understand security and privacy best practices as well as how to properly monitor, log, and alarm for production systems.
  • Strong communication skills and ability to communicate with your peers through to senior leaders. You should be able to engage and influence others to collect requirements, describe what you’re doing, and work through problems and find productive solutions

Education

Any Graduate