The Software Engineer Intermediate/Senior will join our team to build the next generation of JDA Supply Chain applications. These applications are being built from the ground up to take advantage of current and emerging technologies and practices. In this role, you will serve as a technical resource collaborating with your colleagues on the application, system, and mobile teams. The ideal candidate should be a skilled developer with an understanding of concepts such as DevOps, SaaS, microservices, algorithms, performance engineering, and UI/UX. Stand-out candidates will have experience and depth in one or more areas.
- Develop high performing, scalable solutions for handling real-time transaction processing.
- Work with UX designers to build real apps from mockups and wireframes
- Develop and execute Unit Tests and develop detailed software designs from requirements, working with other team members.
- Analyze and fix performance problems on the application.
- Drive the acceptance of new technologies and processes, interacting with both product and platform teams.
- Participate in code reviews: verify maintainability, extensibility and assure complexity has been minimized.
- Participate in a collaborative, supportive, and fun environment to bring out the best work in those around you.
- Experience with back-end frameworks such as Java, Spring, best practices and patterns.
- Experience with SQL query development, database architecture, and query tuning techniques (SQLServer / Oracle).
- Experience with Spring, Hibernate, Spring Boot, GIT, Jenkins, Gradle, Docker, Kubernetes, Puppet, Ansible, MongoDB, gRPC
- Experience with SaaS platforms such as GCP, AWS, Azure or Bluemix
- Understanding of converting monolithic applications to micro-service based applications.
- Experience with API First design
- Experience with emerging technologies such as Spark, Hadoop, Elasticsearch, Redis, Kafka, and machine learning
- Bachelor’s degree in Computer Science or related field.
Highly Desired Skills
- 10+ years experience in software development
- Understanding of being an active member of a Scrum or Kanban team.