Software Development Leader
BAM is seeking an experienced software development leader to join its team. As a development leader at BAM, you will play a critical role in helping development teams delivery software. You will actively participate in working design, development, and maintenance of our software applications. Your responsibilities will include:
• Coach and assist team(s) to succeed in delivering products using Scrum patterns and practices.
• Develop a consistent state of flow:
o Set clear goals (expectations and rules are discernible, and goals are attainable, aligning appropriately with one’s skill set and abilities).
o Direct and provide immediate feedback (successes and failures during the activities, allowing behavior adjustments).
o Encourage team members to lead by example and collaborate effectively.
• Foster team dynamics.
• Enable Sprint Practices:
o Experiment with various formats and locations for effective Sprint Retrospectives.
o Ensure the team remains focused on Sprint goals.
o Verify that the team’s actual work is reflected on the sprint taskboard.
• Build Team Composition and Self-Management:
o Develop a mix of skills and roles within each team.
o Make self-management artifacts visible and convenient for the team’s use.
o Protect artifacts from external scrutiny that may impede transparency and self-management.
o Encourage team members to volunteer for tasks and feel a sense of ownership.
o Explicitly address technical debt repayment in the definition of done.
o Foster collective responsibility for all aspects of agreed work (testing, documentation, etc.).
• Promote Engineering Testing Practices:
o Ensure regression tests are progressing towards a “push to test” button for detecting regression failures.
o Maintain an appropriate balance of automated end-to-end system tests and unit tests.
o Enforce automated system and unit tests.
o Aim for rapid feedback loops (hours or minutes) rather than daily builds.
• Actively participate in agile ceremonies and interface with stakeholders.
• Contribute to high-quality software solutions using C# and .NET Core, ensuring optimal performance and reliability when required.
• Advise and suggest design and sustainment of database schemas using MS SQL and PostgreSQL, optimizing queries for efficient data retrieval and storage.
• Implement cloud-based solutions using AWS services to enhance scalability, security, and overall system performance.
• Utilize Git for version control, ensuring codebase integrity and collaboration among team members.
• Implement DevOps practices and CI/CD pipelines for efficient software delivery and deployment.
• Collaborate with cross-functional teams, including product managers, designers, and business analysts, to define software requirements and deliver high-quality features.
• Participate/conduct code reviews to maintain code quality, consistency, and adherence to best practices, when necessary.
• Assist and lead investigation and resolution of complex software issues and bugs, ensuring the stability of our applications.
To excel in this role, candidates should possess the following
Qualifications:
• Bachelor's or Master's degree in Computer Science, Software Engineering, or a related field or equivalent work experience and/or certifications.
• 3-5years of enterprise level software development and delivery leadership.
• Proven experience operating or having similar responsibilities as an Agile Coach or Scrum Master.
• Strong understanding of Agile principles and practices.
• Excellent communication and facilitation skills.
• Proven interpersonal and conflict resolution skills and methods.
• Technical background with familiarity in software development and delivery.
• Relevant certifications (e.g., CSM, CSPO, LeSS)
• Professional, enterprise software development experience with increasing levels of responsibility.
• Proficiency in C# and .NET Core, with a strong understanding of object-oriented programming principles.
• Extensive experience with SQL and PostgreSQL databases, including database design and optimization.
• Familiarity with cloud platforms, particularly AWS, and experience in integrating cloud services into software solutions.
Skills:
• People leadership.
• Proficiency in C# and .NET Core.
• Strong database design and SQL skills, including PostgreSQL.
• Excellent problem-solving and troubleshooting abilities.
•Strong leadership, communication, and teamwork practices.
• Experience with AWS (DynamoDB, Lambda function, SQS, SNS, … etc.)
• Ability to work in an agile development environment (Scrum).
• Git version control proficiency with branching strategy enforcement.
• Familiarity with containerization and orchestration tools using Docker and Kubernetes.
• Extensive understanding of software architecture design patterns.
• Cloud platform knowledge with hands on experience.
• CI/CD pipelines orchestration, configuration, and execution.
Preferred Skills (not mandatory but a plus):
• Experience with OutSystems for low-code development.
• Knowledge of OpenSearch (Elasticsearch) for search and analytics.
• Exposure to popular front-end web development technologies like Angular or React.
• Familiarity with LeSS agile practices for software delivery.
• Security+ certification.