Job Description
Symetra has an exciting new opportunity to join our Emerging Solutions team as a Senior Full Stack Software Developer!
Requirements
Your skills and experience
- 5 +years' experience as a software engineer with excellent design, problem solving and debugging skills
- Polyglot programmer with experience in one or more of NodeJS, TypeScript, Python, Java, C#
- Demonstrable experience with web development using modern front-end frameworks such as AngularJS, ReactJS
- Experience with SQL as well as NoSQL for data management is desirable
- Hands on experience in building scalable systems using containers/serverless in one or more of the cloud providers AWS, Azure, GCP
- Proactive, thrives in a startup like environment with a strong sense of ownership and responsibility
- With little or no supervision, capable of analyzing, planning, designing and owning complex or vaguely defined issues
- Collaborative attitude that incorporates various perspectives and puts customer before technology
- Strong communication skills with technical and non-technical peers
- Strong problem solving, project management and organizational skills
- Experience in DevOps and Agile methodologies
- Bachelor's degree in Computer Science preferred
What you'll do
- Design and document system integration/configuration as required. Plan and coordinate movement of code between various technical environments and participate in large system implementations.
- Estimate and deliver assigned tasks.
- Architect, design, implement, test and deliver highly scalable systems and services. Lead design and code reviews. Translating resulting software design and wireframes into high-quality code.
- Build highly scalable API's that are continuously deployed and updated through an automated CI/CD pipeline. Enable user analytics, logging, monitoring, instrumentation for all services.
- Write unit tests, integration tests, performance tests.
- Collaborate with various team members and stakeholders on requirements definition and feature design and development.
- Be an agent of Agile thinking to deliver testable and usable software iteratively.
- Analyze functional application design and develop/test detailed programs for complex components.
- Participate in requirements definition, UX development, and customer support.
- Identify opportunities for improving application functionality and performance issues by working with customers and architecture resources. Utilize application development tools and methodologies across multiple platforms.