- Write new or enhance custom software as a member of your Agile scrum team. Successfully contributing to software that is complex, secure, cloud-native, scalable, performant, high user/data volume, and part of a highly available distributed system without introducing a regression in any of these aspects.
- Ensure that your solutions are written with quality in mind with unit and integration tests. Code is correct, clean and follows best practices.
- Regularly participate in scrum activities, technical design, design reviews, code reviews and status updates.
- Work with team members to ensure that delivered code meets specifications based on functional/technical specifications
- Grow your knowledge of the solution areas that you represent.
- Grow your understanding of the value and impact that your solutions provide to Ascension and the community.
What You Will Need
Education:
- Bachelor's degree or higher in Software Engineering, Computer Science, Computer Programming or substantially related field is required.
- Computer Science Bachelor's degree or degree in related field of study preferred
Required Experience/Skills:
- Advanced knowledge of Computer Science fundamentals in OOAD, design patterns, data structures, and algorithms
- Experience with microservice design and development.
- Experience designing and developing cloud-native, scalable, and highly available distributed systems
- Strong understanding of relational and NoSQL databases (MySql, Postgres, Mongo etc), SQL, and database/schema design
- Experience designing, developing and consuming RESTful API’s
- Experience with API gateways (e.g. Apigee, Kong)
- Experience with message broker/event queue technologies (e.g. Rabbit, Kafka)
- 2-6 years professional experience in software engineering.
- Strong verbal and written communication skills
Desired Experience:
- Experience developing in Java8+/Spring Boot
- Experience with TDD/BDD/DDD using JUnit, Cucumber etc.
- Experience with PCF and GCP