Responsible for designing, developing, and maintaining software applications, this role involves writing efficient code, collaborating with teams to meet requirements, debugging, conducting code reviews, documenting processes, staying abreast of tech trends, mentoring juniors, and creating architectural designs and proofs of concept.
Requirements
- Expert level understanding of algorithms and data structures
- Expert of two and advanced in one programming language(s) such as TypeScript, Java, C-Sharp, etc.
- Expert level experience with software development methodologies such as Agile and Scrum
- Advanced level knowledge of databases, SQL and NoSQL
- Master level familiarity with version control systems such as Git
- Master level understanding of software testing and debugging
- Master level problem-solving skills
Responsibilities
- Design, develop, and maintain software applications
- Write clean, testable, and efficient code
- Collaborate with cross-functional teams to identify system requirements and design solutions
- Debug and troubleshoot software issues
- Participate in code reviews to ensure quality and adherence to best practices
- Document software design, testing, and maintenance processes
- Create high level architectural designs and proof of concept implementations
Other
- Minimum of 8+ years of experience in a related position
- Strong preference for candidates residing in Georgia, Utah, or Indiana
- High level of integrity and dependability with a strong sense of urgency and results-orientation.
- Advanced level communication and interpersonal skills
- Expert level ability to work effectively in a team environment