Sr. Full Stack Software Engineer
Position Title: Full Stack - Sr./ Staff Software Engineer
* Provide technical leadership and drives best practices for code development, review, testing, and deployment that will ensure high quality releases to production.
* Leads and participates as a Principal Engineer within scrum team(s) to provide leadership, industry best practices and conformance to team development guidelines, standards and best practices.
* Partners with the Product organization to understand platform requirements in order to develop architectures and select technologies and approaches that enable the product vision.
* Develop and contribute to code.
* Add comprehensive automated testing to ensure quality and development productivity.
* Help resolve production and customers issues and engineer long-term solutions through triage and root cause analysis and data analytics.
* Encourage and facilitate technical discussions, ensure deadlines are met and drive our product forward.
* Help mentor new and existing engineers.
* Other duties and projects as assigned.
Responsibilities & Duties
* Abstract and critical thinker and problem solver able to get to the root of difficult challenges.
* Able to think and communicate at a very technical detailed level but also at a higher level for broader non-technical audiences.
* Takes a tactical approach to how the team executes.
* Takes a strategic approach to how we organize and plan.
* Responsible for code quality and best practices.
* Influences design decisions based on reusability, readability, performance, scalability, supportability and testability factors.
* Responsible for ensuring that code can be tested and deployed through automated solutions.
* Holistic and cross functional awareness, ability to engage outside of team in a constructive way.
* Communicates regularly and clearly.
* Able to write high quality code.
* Understand modern design patterns and architectures.
* Bring a positive attitude to the team and presents a professional and optimistic outlook.
* BS, BA or MS in Computer Science, Information Systems, or equivalent experience.
* 10+ years in full-lifecycle software engineering or equivalent.
* 5+ Years experience building SaaS platforms delivered on Amazon Web Services (AWS)
* 5+ years working with the NodeJS utilizing common design patterns and practices
* 3+ years experience developing production SaaS systems leveraging serverless design patterns on AWS (toolsets include AWS Lambda, Serverless framework, AWS SAM, etc.)
* 3+ Years experience developing web applications using ReactJS
* 5+ years professional experience with relational databases (e.g. AuroraDB, MySQL etc.)
* 5+ years professional experience with NOSQL databases (e.g. DocumentDB, MongoDB, DynamoDB etc.)
* 5+ years developing software in an agile environment utilizing the Scrum framework.
* 3+ years experience developing leveraging containers and supporting technologies for the deployment and management of production systems (e.g. Docker, Amazon ECS, etc.)
* 3+ years of proven experience building scalable REST endpoints.
* Deep understanding and experience with Agile principles and practices.
* Strong skills in interpersonal relationships and team building.
* Excellent English communication skills.
* Ability to troubleshoot and resolve production issues.
* High level of accountability when working within a team, responding quickly to development obstacles.
Optional but highly desired:
* Full stack development experience.
* Experience developing mobile applications (preferably leveraging React Native)
* Experience with API design and implementation leveraging GraphQL (preferably with AWS AppSync)
* Previous experience working with or integrating with enterprise accounting systems.
This position is a remote position and requires the individual to work from their home.
* Talking/Hearing Over Phone & In Person 50%
* Sitting 90%
* Frequent Alpha/Numeric Keyboarding 90%
* Ability to View Computer Monitor 90%
* Take Notes in Written Form 10%