Remote
The Software Engineer contributes as a member of the Development Team throughout each phase of the software development lifecycle, including contributing to technical proof of concepts, assisting in designs, implementing systems according to standards, and creating automated tests. The incumbent works under close supervision on technical tasks of high complexity of medium to large scale utilizing pre-established standards and best practices. The Software Engineer will at times mentor members of the team.
Key Responsibilities
Develops high-quality code with minimal disruption to the production environment, while helping the team meet project deadlines
Works as an individual contributor across multiple teams to complete varying technical tasks, including understanding upstream/downstream processes and interfacing systems to ensure seamless integration with other systems
Submits and tracks requests to resolve network blockers and security requirements needed to complete integration and delivery work
Documents and contributions to solution designs in a team setting, actively seeking feedback from peers during design sessions
Communicates regularly on the progress of work products and deliverables to management and team members during daily standups and design sessions
Participates in peer review sessions and leads by example in how to constructively critique technical deliverables
Documents technology standards and best practices, and ensure adherence to them across the team
Conducts analysis of application and database performance, reviews log files, and troubleshoots and monitors applications in partnership with the application support team
Assists in implementing reliable automated test cases to ensure application quality and stability, in partnership with Quality Engineers
Experience/Education
BS, in Computer Science or related technical discipline (or equivalent).
4 to 6 plus years of experience in software design and web development
Skills
Demonstrates excellent written and oral communication abilities, including presentation skills
Demonstrates independent thinking and decision-making abilities
Strong programming skills in object-oriented languages, Java is preferred
Proficient knowledge of at least one Unix or Unix variant system
Familiarity with at least one relational database system
Experience with Spring, MVC, Java Script, Ajax, ORM, and web services is very helpful
Experience with Angular is very helpful
Experience with AWS containerization and serverless is very helpful
Experience with build automation and code repository tools (i.e. Jenkins, Git, Maven, , GitLab, etc.)
Familiarity with SQL, database object creation, and stored procedures Understanding of agile software development methodologies and the differences from waterfall methodologies.
Top 3 hard skills:
- Java with Spring framework
- SQL skills
- AWS services
- Angular
Top 3 soft skills:
Collaboration/Teamwork
Adaptability (adjusts to changes in priorities)
Critical Thinking (applies objective analysis and reasoning)
Communication
Notes:
Remote