Analyze existing systems to identify bottlenecks, tech debt, and implement scalability, and stability improvements
Implement automation for testing, monitoring, healing, and scaling applications, continuous integration and deployment to reduce time to market
Collaborate with cross-functional teams, including product managers, designers, and other engineers, to define and implement new features
Conduct code reviews (comment, approve, seek revisions, merge), mentor junior and mid-level engineers, and actively promote engineering best practices
Dive deep and troubleshoot complex issues, devise fixes, author root cause analysis documents, and ensure lasting performance and reliability
Conduct objective and comparative analyses of competing technologies to advise the team of pros and cons of a technology solution
Maintain robust documentation (design docs, run books, change management docs, and readiness plans)
Provide live-site support for production applications by monitoring systems, ensuring rapid incident resolution, and driving continuous improvement
Drive cross-team projects as a single-threaded-owner (STO) or tech lead, and actively unblock other engineers to make progress
Requirements
Bachelor’s degree in Computer Science or Software Engineering
5-8 years of professional experience in software engineering
Strong Experience in C, Java, Kafka
Strong understanding of data structures and algorithms, object-oriented design, and problem-solving skills
Expertise in designing and developing internet-scale services with scalability, availability, security, and reliability design tenets
Excellent written and verbal communication skills, and a collaborative and empathetic mindset
Proficiency in backend development, with proficiency expertise in Java or C#, and frameworks like SpringBoot, building and optimizing RESTful APIs, ODATA framework, and SQL