You will join a team of exceptional developers to deliver world-class software. You will provide high quality technology solutions that address business needs by developing applications within a fast-paced environment. You will utilize mature (3rd or 4th generation) programming methodologies and languages and adhere to best practice and market leading procedures and techniques while contributing to the technical code documentation.
Understand and influence the vision of program strategy
Plan information architecture by studying the business concept, strategy, and target market; envisioning architectural scheme, information structure and features, functionality, preparing data models; designing information structure, work-and dataflow, and navigation; evaluating information representation;
Design and develop solution strategy which supports productivity, maintainability, interoperability, and product growth
Prevent decision process from stalling by ensuring solution level issues are addressed promptly
Conduct, manage, and enforce code reviews.
Conduct technical and feature risks assessments and communicate to the architecture and product management groups
Educate and enforce clean code that follows the main programming principles
Enforce Proper Unit, Integration, System, Performance level Tests, Code Coverage, and Static / Dynamic Code Quality Metrics
Work with the wider tech team to ensure proper solution based on the established architectural principles and patterns
Mentor and guide technical resources within the team
Leverage open source and other technologies and languages outside of the framework should the need arise and autonomously be able to make use of those technologies.
Develop cutting edge solutions to maximize the performance, scalability, and distributed processing capabilities of the system
Provide troubleshooting and root cause analysis for issues that are escalated by the team
Enhances information architecture team accomplishments and competence by planning delivery of solutions; answering technical and procedural questions for less experienced team members; teaching improved processes; mentoring team members.
BS/MS degree in Computer Science, Engineering, related subject OR equivalent work experience.
5+ years of application development experience with RoR and other OO based programming languages
Minimum 5 years’ experience in application design and development with infrastructure management experience, specifically: -
a) building and maintaining a multi-tenanted, micro service-based architecture
b) SDK and API design and maintenance
DevOps in an agile environment, AWS and Docker. Experience with Ansible or other automation tools a plus.
Software development experience including design patterns, RESTful service implementation, Service Oriented Architecture, Test-Driven Development, Acceptance Testing, Transact-SQL, relational databases and PostgreSQL
Database Management, Data Modeling, Presenting Technical Information, Problem Solving, Strategic Planning, Data Maintenance, Verbal Communication