Bachelor's degree in Computer Science, Software Engineering, Information Technology, or a related field 5+ years of professional experience in software development 1+ years of experience in a leadership or managerial role within a software engineering team Proficiency in Javascript/Typescript Knowledge of JavaScript frameworks such as Node, ExpressJs, React, Vue Experience with developing RESTful APIs and their best practices Experience with event technologies such as AMQP, Kafka, Kinesis and designing event-driven service architectures Experience with OAuth 2.0 authentication Hands-on experience with software development methodologies, particularly Agile or Scrum Expertise in software development lifecycle including design, development, testing, and deployment Expertise in software engineering best practices, including code reviews, testing, and version control systems Proven experience in managing and delivering software projects on time and within budget Familiarity with project management tools and practices Demonstrated ability to lead, mentor, and develop engineering teams Experience in performance management and conducting performance reviews Strong communication skills Experience working in cross-functional teams Strong analytical and problem-solving skills