Software Developer
Job Description
· Master or Bachelor’s degree in computer science/information technology/programming & systems analysis/science (computer studies) faculties. · At least 5 years of software development experience, including 3+ years of front-end development Front-End Expertise: o Advanced proficiency in Angular 19+ o Deep knowledge of AGGrid, NgRx store, Angular signals, and signal store o Strong sensitivity to design and UX principles o Experience conducting code reviews and enforcing Angular development best practices o Ability to ensure consistency and homogeneity across front-end implementations o Development of automated BDD tests Back-End Knowledge: o Experience with Python, REST APIs, and FastAPI o Ability to develop and maintain back-end services as needed DevOps & Infrastructure: o Strong knowledge of Docker, Kubernetes, and microservices architecture o Experience with GitOps, ArgoCD, Maven,and Git o Proficiency with CI/CD tools (GitLab, Jenkins, Ansible) o Familiarity with monitoring and alerting tools (Elasticsearch) Cloud & Architecture: o Experience with cloud-native architecture and AWS o Understanding of distributed systems and scalability patterns Technical Fundamentals: o Good knowledge of algorithms and data structures, with strong fundamentals in complexity analysis o Strong ability to analyze code—understand execution flow and debug even without access to a debugger o Proficiency with static analysis tools (SonarQube) o Good knowledge of SQL (PostgreSQL, Redis) or SQL-inspired dialects (e.g., HQL) o Experience writing and maintaining integration tests Collaboration Tools: o Experience with Jira or similar issue-tracking systems o Commitment to software craftsmanship and DevOps culture · Demonstrated ability to effectively utilize AI-powered tools (e.g., GitHub Copilot) to enhance productivity and problem-solving capabilities · Understanding of AI/ML fundamentals, including prompt engineering, model limitations, and best practices for human-AI collaboration · Experience in evaluating AI-generated outputs for accuracy, security, and alignment with business requirements · Ability to identify opportunities for AI integration and automation within existing workflows and processes