Senior Software Engineer
Reports To: Engineering Manager
Job Summary:
As a Senior Software Engineer, you will be instrumental in designing and deploying software solutions that address critical business challenges. Beyond your technical skills, you will act as a leader and mentor, guiding your team to produce high-quality, reliable, and maintainable software. You will influence the development pipeline, make key technical decisions, and work closely with stakeholders across the organization to drive success.
Key Responsibilities:
Technical Leadership:
- Lead technical design decisions, providing guidance that impacts the entire team‘s scope of work.
- Navigate challenges and adapt to changes, effectively communicating adjustments to plans as needed.
- Ensure the health of CICD pipelines, making necessary updates and adjustments.
- Set and pursue goals for service availability and failure rates, actively addressing infrastructure issues to ensure a reliable software environment.
Infrastructure and Operations:
- Maintain and optimize CICD pipelines, ensuring they are functional and up-to-date.
- Define and achieve availability and performance targets for the services under your team’s responsibility.
- Identify infrastructure issues and drive their resolution to maintain a robust software environment.
Team Collaboration and Growth:
- Enhance team productivity by finding and implementing strategies that enable greater efficiency.
- Foster a collaborative environment, encouraging knowledge sharing and team cooperation.
- Support colleagues in developing problem-solving skills and independence, rather than providing immediate solutions.
Code Quality and Development:
- Produce exemplary code that meets high standards of quality and reliability.
- Advocate for and implement automation to reduce repetitive tasks, minimize errors, and improve efficiency.
- Apply deep knowledge of design patterns and architectural principles in your work.
Continuous Improvement:
- Stay informed about industry trends and emerging technologies relevant to your team’s work.
- Embrace a culture of experimentation and use data-driven approaches to drive continuous improvement.
Customer Focus:
- Understand and empathize with customer needs, translating them into effective technical solutions.
- Collect and analyze customer feedback to guide product development and enhance user satisfaction.
Qualifications:
- Bachelor’s degree in Computer Science, Software Engineering, or a related field.
- Strong interpersonal and communication skills for effective collaboration and stakeholder engagement.
- Data-driven mindset with a proven ability to use data for strategic decision-making.
- In-depth knowledge of software development best practices, methodologies, and SDLC, particularly in fast-paced, cloud-based environments.
- Excellent problem-solving skills with a commitment to delivering high-quality solutions.
- Proficiency in making technical decisions that balance short-term and long-term impacts.
- Proven experience in mentoring and developing team members.
- Experience with AWS and microservices is advantageous.
- Experience with Flutter app development is a plus.
- Familiarity with test-driven development (TDD) and behavior-driven development (BDD) practices is beneficial.