Job responsibilities
- Works closely with Solution & Technical Architects, Senior Engineers to develop the best technical design and approach for new product development.
- Manages daily activities of the development team with scrum & agile approach and instill best practices for software development and documentation, assure designs meet requirements, and deliver high-quality work on tight schedules.
- Assesses compliance, risks, and vulnerabilities to ensure all systems and baselines are operationally sound, performance at scale, and exceed customer expectations.
- Provides technical guidance to coders and infra systems and process optimization opportunities.
- Drives architectural reviews, code reviews and business demos.
- Manages the ongoing development of the team, including recruitment, performance management, coaching, and mentoring.
- Collaborates with peer teams on complex, global engineering efforts to ensure architecture agreement, resource coordination, and implementation timelines.
- Translates business requirements into technical solutions, recommend alternative technical and business approaches, and lead engineering efforts to meet ambitious timelines with optimal solutions.
- Ensures proper communication concerning changes in established milestones or challenges that may affect the outcome of a project's completion date.
- Provides out of hours application support and coordination of Production releases.
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and 5+ years applied experience
- Deep understanding of architectural concepts, issues and trends.
- Demonstrable experience in people management as well as strong written and verbal communication skills.
- Proficient in Java17+ with Spring Boot, Kafka, Kubernetes, SQL and NoSQL databases (e.g. Oracle, PostgreSQL, CockroachDB and Cassandra )
- Experience of creating thread-safe concurrent code in Java or another JVM based language
- Expertise in applying appropriate data structures and algorithms to solve business and technical problems
- Hands-on practical experience in secure system design, application development, automated regression testing, performance profiling and operational stability
- Experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
- Solid understanding of agile methodologies such as Scrum, CI/CD, Application Resiliency, and Security
- Expertise in application, data, and infrastructure architecture disciplines
- Ability to communicate effectively with senior management and other departments. Effectively organize and manage multiple organizational initiatives and encourage coworkers to do the same.
Preferred qualifications, capabilities, and skills
- Hands on experience with a statically compiled language like C, C++, Rust or Golang
- Knowledge of data serialisation formats (e.g. Google Protocol Buffers, Apache Avro or Parquet )
- Experience with gRPC and caching technologies, e.g. Redis, Valkey
- Experience in performance / non-functional testing tools and techniques (e.g. JMeter , Gatling , Blazemeter )
- Certified Kubernetes knowledge (e.g. CKAD) & Certified public cloud technology knowledge (e.g. AWS)