Summary
Join our forward-thinking company as a seasoned Senior Software Engineer to build innovative solutions from the ground up. Collaborate with cross-functional teams, design and implement robust backend and frontend systems, and lead the end-to-end development process.
Requirements
- Bachelor's degree in computer science, engineering, or a related field
- 5+ years of experience in software development, with a strong focus on backend and/or frontend development
- Proficiency in core technologies including PHP, NodeJS/NestJS/Typescript, Go, and ReactJS
- Experience with cloud platforms and serverless architectures, particularly using AWS and the Serverless Framework
- Strong understanding of software design principles and best practices, including SOLID principles, design patterns, and clean code
- Experience with modern CI/CD pipelines and automated testing frameworks
- Knowledge of database management systems, including both relational and NoSQL databases
- Strong problem-solving skills and the ability to troubleshoot complex issues in a fast-paced environment
- Excellent communication and collaboration abilities, with experience working in cross-functional teams
Responsibilities
- Collaborate with Engineering Manager to define technical solutions that align with product goals and deliver exceptional user experiences
- Partner with product UI/UX designer to translate visual and interaction designs into functional, high-quality code
- Coordinate with DevOps engineers to ensure smooth deployment processes and robust CI/CD pipelines
- Engage with other software engineers to ensure seamless integration of features and services across the stack
- Collaborate with customer support to understand and resolve technical issues faced by users
- Design and implement robust backend and frontend systems, ensuring they are scalable, secure, and maintainable
- Lead the end-to-end development process, from initial design to deployment and monitoring in production environments
- Maintain CI/CD pipelines, enabling automated builds, testing, and deployment across multiple environments
- Proactively identify bottlenecks and implement solutions to improve the performance and scalability of our applications
- Utilize monitoring tools and analytics to track system performance and make data-driven improvements
- Ensure that all deliverables meet the highest usability and performance standards, keeping the end-user experience at the forefront
- Manage your workload effectively, delivering projects on time while maintaining high quality and meeting project requirements
- Communicate progress, challenges, and updates clearly with stakeholders to ensure alignment and transparency
Benefits
- Reduction in the number of bugs reported in production (target: 40% reduction)
- Improvement in the average time taken to deliver features from development to production (target: 30% reduction)
- Increase in the number of features delivered per sprint (target: 20% increase)
- Reduction in the number of rollbacks or failed deployments (target: 35% reduction)
- Reduction in system downtime or outages due to software issues (target: 50% reduction)
- Increase in the system's ability to handle increased user load without performance degradation (target: 30% improvement)