The Applications Development Senior Programmer Analyst is an intermediate level position responsible for participation in the establishment and implementation of new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to contribute to applications systems analysis and programming activities.
Requirements
- Strong Core Java, Spring and functional programming hands-on experience.
- Understanding of concurrent and parallel programming, including threads, processes, synchronization, and handling race conditions.
- Knowledge of reactive programming for building asynchronous, event/message-driven systems in microservices based applications that are highly concurrent.
- Proficient in containerizing applications, continuous integration, and continuous delivery in Java ecosystem.
- Knowledge of distributed tracing and API Gateway integration for microservices architecture.
- Proficient in functional programming concepts with Streams API, Lambda Expressions and Optional.
- Understanding of secure coding practices, SSL/TLK, OAuth, and JWT token handling in Java-based applications.
Responsibilities
- Strong Core Java, Spring and functional programming hands-on experience.
- Understanding of concurrent and parallel programming, including threads, processes, synchronization, and handling race conditions.
- Knowledge of reactive programming for building asynchronous, event/message-driven systems in microservices based applications that are highly concurrent.
- Proficient in containerizing applications, continuous integration, and continuous delivery in Java ecosystem.
- Knowledge of distributed tracing and API Gateway integration for microservices architecture.
- Proficient in functional programming concepts with Streams API, Lambda Expressions and Optional.
- Understanding of secure coding practices, SSL/TLK, OAuth, and JWT token handling in Java-based applications.
Other
- 4-6 years of relevant experience.
- Experience in systems analysis and programming of software applications.
- Experience in managing and implementing successful projects.
- Working knowledge of consulting/project management techniques/methods.
- Ability to work under pressure and manage deadlines or unexpected changes in expectations or requirements.