Design develop test deploy maintain and improve the softwareWrite and publish specifications perform code reviewsSoftware development experience in two or more general-purpose programming languagesExperience with Agile and DevOps methodologiesDemonstrated ability to design and deliver high-quality softwareExcellent interpersonal skills and ability to work independently Bachelor's degree in Computer Science Electrical/Computer Engineering