Responsibilities:
This position is responsible for the development and maintenance of applications throughout the software development lifecycle (SDLC). Prepares detailed specifications from which programs will be written and ensures proper documentation is complete. Competent to work on all phases of application systems analysis and programming activities. May provide guidance and direction to lower level staff. The level of work required is considered advanced and staff must be able to work under minimal supervision. This job does not have any direct reports.
Principal Duties and Responsibilities:
• Designs, develops and implements new application components and/or complete applications
• Evaluates, designs, and implements complex modifications to existing applications to accommodate changes in user requirements of hardware/software infrastructure
• Collaborates with Project Management, Business and Systems Analysts and leadership by recommending specifications for system enhancements for continuous functional improvement
• Oversees and refines application components for performance enhancement
• Produces technical documentation that accurately and thoroughly depicts the software design and code base
• Maintains robust understanding of business processes and needs in order to deliver accurate solutions
• Develops, maintains, and enhances high quality software code in accordance with established organization standards and development guidelines
• May review, perform testing, and provide feedback on the work of Application Developers
• Provides primary or backup support to resolve production problems and processing issues
Qualifications:
Education and Experience
• Coursework in computer science and/or professional certification in related technology
• 3-5 years of direct work related experience
Knowledge and Skills:
• Demonstrates strong critical thinking abilities
• Demonstrates strong written and oral communication skills
• Demonstrates excellent customer service skills
• Possesses and applies broad knowledge of principles, practices, and procedures of the field of specialization to the completion of assignments
• Experience with Agile software development methodology
• Demonstrates strong continuous software development capabilities
• Strong knowledge of modern enterprise grade programming application languages, open source stacks, and/or UI best practices)
• Strong knowledge of modern operating systems
• Strong knowledge of modern database languages
• Knowledge of database design and schema
Must have experience building public facing applications using:
• Object Oriented Analysis and Design
• AWS Services - Lambda, DynamoDB, S3, VPC, API Gateway, ECR
• Terraform
• NodeJS
• Typescript
• Jest unit test framework
• Docker
• Git