Description

Key & Responsibilities:

 

· Technical Leadership: Provide technical guidance and mentorship to development teams, ensuring adherence to best practices and high-quality code standards.

· Architecture and Design: Architect scalable and efficient solutions using React JS, React Native, and Java, considering performance, security, and maintainability.

· Hands-on Development: Collaborate with the development team in the design and implementation of complex features and modules.

· Code Review: Review code, enforce coding standards, and promote code quality through thorough code reviews.

· Google Cloud Platform: Leverage GCP services to design and build cloud-native applications, utilizing services such as Google Cloud Functions, Firestore, Cloud Pub/Sub, and more.

· Performance Optimization: Identify and resolve performance bottlenecks in applications and ensure optimal performance.

· Documentation: Create and maintain technical documentation, including architecture diagrams and code documentation.

 

 

Non-Technical Responsibilities:

 

· Leadership: Provide leadership and guidance to the development team, ensuring they meet project goals and deadlines.

· Stakeholder Communication: Collaborate with product managers, stakeholders, and other teams to understand project requirements and communicate progress effectively.

· Mentorship: Mentor and coach team members, fostering a culture of continuous learning and growth.

 

Qualities Crucial for a Fast-Paced Product Development Environment:

 

· Adaptability: Ability to quickly adapt to changing project requirements and technology stacks in a dynamic environment.

· Effective Communication: Strong communication skills to convey complex technical information to non-technical stakeholders and foster collaboration within the team.

· Problem Solving: Proven ability to identify and solve complex technical challenges, making critical decisions under pressure.

· Team Collaboration: A collaborative mindset, promoting a positive team culture and ensuring efficient teamwork in a fast-paced setting.

 

Core Technical Skills:

 

· Java: Solid proficiency in Java for backend development, including:

· Programming Proficiency: Strong command of the Java programming language,

· RESTful API: Design and implementation of RESTful APIs for communication between the frontend and backend.

· Database Integration: Integration with databases using frameworks like Hibernate or JPA.

· Performance Tuning: Proficiency in optimizing Java applications for performance, memory management, and garbage collection.

· Spring Framework Knowledge: Strong understanding of the core concepts of the Spring Framework, including dependency injection and aspect-oriented programming.

· Dependency Injection: Expertise in dependency injection and inversion of control (IoC) in Spring Boot applications.

· Security: Understanding of Spring Security for implementing authentication and authorization in Spring Boot applications.

· Pub/Sub (Publish/Subscribe) Systems: Understanding of the publish/subscribe architectural pattern and its applications in event-driven systems.

· Apache Kafka: Knowledge of message brokers and middleware solutions like Apache Kafka, and Google Cloud Pub/Sub.

· Kafka Concepts: In-depth knowledge of Apache Kafka concepts, including topics, partitions, brokers, producers, and consumers.

· Scaling: Familiarity with scaling and load balancing in a pub/sub system to handle varying workloads.

· Google Cloud: Familiarity with Google Cloud Platform services, including but not limited to:

· Google Cloud Functions: Building serverless functions for event-driven applications.

· Firestore: Structured and scalable NoSQL database for real-time applications.

· Cloud Storage: Storing and retrieving binary data such as images and documents.

· Cloud Pub/Sub: Event messaging service for building event-driven systems.

· PostgreSQL Database: In-depth knowledge of PostgreSQL, including installation, configuration, and administration.

· Database Security: Knowledge of PostgreSQL's security features, including access controls, encryption, and authentication mechanisms.

· PL/pgSQL: Proficiency in PostgreSQL's procedural language for developing stored procedures, triggers, and functions.

· High Availability: Understanding of database replication, clustering, and failover mechanisms for high availability configurations.

· Data Migration: Experience in planning and executing data migrations, upgrades, and backup and recovery strategies.

· PostgreSQL Database is optional or good to have skill

 

Qualifications:

 

· Bachelor’s degree in computer science or a related field.

· 10+ years of software development experience, with a focus Java, and Google Cloud.

· Previous experience in team lead role

Education

Bachelor's degree