Full-Stack Software Engineer
Revel Media Group
- Kaysville, UT
- $80,000-130,000 per year
- Permanent
- Full-time
- Frontend Development: Develop and maintain user interfaces for web applications following best practices. Implement product designs that pass acceptance tests.
- Backend Development: Design, implement, and maintain server-side logic and databases. Develop server-side APIs and integrate them with third-party APIs and client applications.
- Cloud Services Integration: Work in AWS to deploy and manage applications in the cloud. Integrate cloud services such as storage, databases, and functions into application architecture.
- Infrastructure as Code (IaC): Develop and manage infrastructure using Terraform. Define and maintain infrastructure configurations to ensure consistency and repeatability in deployments
- Continuous Integration/Continuous Deployment (CI/CD): Implement and maintain CI/CD pipelines for testing, building, and deploying applications. Ensure that deployment processes are reliable, efficient, and well-monitored.
- Backup and Disaster Recovery: Develop and maintain backup and disaster recovery plans for critical infrastructure components. Test and validate backup and recovery processes regularly.
- Monitoring and Logging: Implement monitoring and logging solutions to track application and infrastructure performance. Respond to alerts and troubleshoot issues in both the application and infrastructure layers.
- Containerization: Using Docker, package applications and dependencies for orchestration. Orchestrate containerized applications using ECS for scalability and manageability.
- Testing and Quality Assurance: Write unit tests and conduct thorough testing to ensure the reliability and robustness of the software. Participate in code reviews to maintain code quality and adherence to coding standards.
- Version Control: Use version control systems (e.g., Git) to manage and track changes to Github repositories.
- Collaboration: Collaborate with cross-functional teams, including designers, stakeholders, and other engineers. Participate in daily stand-ups and other agile development meetings/practices.
- Problem Solving: Troubleshoot and debug issues in the application. Analyze and address performance bottlenecks.
- Documentation: Create and maintain documentation for projects, processes, best practices, and system architectures.
- Technical: Proficient in the areas required by the list of job responsibilities
- Communication & Collaboration: Ability to proactively communicate and work effectively with both technical and non-technical teammates, stakeholders and partners.
- Self-learner / Motivator: Ability to quickly learn and adapt to new technologies and tools. Intrinsic motivation to stay updated with industry trends and best practices. Willingness to take initiative and lead in problem-solving
- Implementing and maintaining frontend SaaS solutions (Vuejs preferred).
- Implementing and maintaining RESTful APIs in Python.
- Implementing and maintaining AWS infrastructure using Terraform.
- Database design and management
- Kanban / Scrum-like Agile practices
- NoSQL databases
- GraphQL APIs
- Microservice frameworks
- Synchronized Multimedia Integration Language (SMIL)
- Mobile Device Management / IoT
- GitHub projects / GitHub wikis / GitHub issues