About the job:
We're looking for an AI Developer to join Klopotek's engineering team from our Beirut office. You will work remotely alongside our development team in Gioia del Colle, Italy designing, building and running AI-powered capabilities inside the software that runs the publishing operations of major global publishers.
This is a hands-on engineering role, not a research position. You will integrate large language models into production systems: retrieval over our product knowledge, AI assistants for support and operations, agentic workflows that act on real business data, and AI features inside our products. Our core platform is built on Java and Oracle, so you will work close to that stack connecting AI services to existing APIs, data and business logic, and making them reliable, secure and measurable.
You will be joining a small but growing Klopotek team in Lebanon four colleagues are already working with us from Beirut, and this role is part of a deliberate expansion of our engineering presence there. You'll have a genuine peer group locally, and work closely with the Italian development team day to day.
This is not a role that rewards knowing the right buzzwords. It is a role for someone who is selfdriven, technically grounded and genuinely excited about learning someone who can tell a convincing prototype from a dependable product, and who takes ownership from idea through to production.
What You'll Do
- Design, build and run LLM-powered features and services from first prototype to monitored production
- Build retrieval-augmented generation (RAG) pipelines over product documentation, configuration knowledge and support history: ingestion, chunking, embeddings, search and ranking
- Develop agentic workflows and tool integrations (e.g. via the Model Context Protocol) that let AI work safely with our APIs, ticketing systems and business data
- Integrate AI services with our Java backend services, REST APIs and Oracle databases
- Build evaluation suites and test sets so we know with numbers whether a change makes an AI feature better or worse
- Engineer prompts, context and guardrails; handle hallucination, data privacy, access control and cost from the start, not as an afterthought
- Monitor AI features in production: quality, latency, token cost and failure modes and improve them continuously
- Work with support, product and operations colleagues to turn real use cases into tools people actually use
- Collaborate asynchronously and synchronously with the Italian development team and crossfunctional stakeholders
- Participate in code reviews give and receive honest, constructive feedback
- Share what you learn: help other developers adopt AI-assisted development and write documentation the next person can actually use
- Use AI coding tools actively and critically in your own work while taking full ownership of what ships
How You Work
We're hiring for mindset as much as skills. The right person for this role:
- Is genuinely curious and self-driven you follow the field because you want to, and you can separate real progress from hype
- Is sceptical by default you measure before you believe, and you know a good demo is not proof
- Thinks in systems you consider how models, data, APIs and people interact, where things break, and how to design for resilience, not just the happy path
- Solves problems even when the path isn't obvious you investigate, experiment, and iterate
- Thinks about the user you build AI features that fit how people actually work, not features that show off the technology
- Communicates clearly and proactively in a distributed team you don't wait to be chased, you flag blockers early and keep colleagues informed
- Challenges ideas constructively and is comfortable being challenged in returnTakes ownership of features end-to-end, not just your assigned ticket
- Is comfortable with ambiguity and fast-changing tools and requirements
-
- Proven experience building and shipping LLM-based applications to real users not only experiments or tutorials
- Hands-on experience with LLM APIs (e.g. Anthropic Claude, OpenAI, Azure OpenAI) including tool use / function calling and structured outputs
- Practical RAG experience: embeddings, vector or hybrid search, chunking strategies, and judging retrieval quality
- Solid software engineering in Python and/or Java clean, tested, maintainable code; comfortable working in an existing Java backend
- API and integration skills: REST, JSON, authentication, and connecting services to existing business systems
- Relational database fluency strong SQL; Oracle experience preferred, PostgreSQL or MySQLaccepted
- A habit of evaluating AI output systematically test sets, metrics, regression checks rather than by impression
- Strong problem-solving skills and the ability to work independently and collaboratively
- Experience with Agile methodologies and fast-paced delivery cycles
- Professional-level English, written and verbal your primary working language with the Italian team
Nice to Have
- Agent frameworks and protocols (Model Context Protocol, LangChain/LangGraph, LlamaIndex, Spring AI or similar)
- Experience with vector databases or search engines (pgvector, Oracle AI Vector Search, Elasticsearch/OpenSearch, Azure AI Search)
- LLM observability and evaluation tooling (e.g. Langfuse, LangSmith, promptfoo or your own)
- Java with Spring Boot or JAX-RS, JPA/Hibernate
- Containerisation and deployment (Docker, Kubernetes) and CI/CD pipelines (Jenkins, GitHub Actions or equivalent)
- Cloud experience, especially Azure (also AWS)
- Security for AI systems: prompt injection, data leakage, access control, GDPR
- Familiarity with Keycloak, OpenID Connect, OAuth 2 or JWT
- Frontend basics (TypeScript, Angular) to build simple user interfaces for AI features
- Domain experience in publishing, rights & royalties, or enterprise support and service management
- You don't need to tick every box. We value the ability to learn quickly and adapt over an exact match on the tech stack.
What We Value
- Learning over knowing
- Evidence over hype
- Adaptability over rigidity
- Problem-solving over box-ticking
- Ownership over task execution
- Honest, direct collaboration over hierarchy provement, and an honest feedback culture
Desired Candidate Profile
- Proven experience building and shipping LLM-based applications to real users not only experiments or tutorials
- Hands-on experience with LLM APIs (e.g. Anthropic Claude, OpenAI, Azure OpenAI) including tool use / function calling and structured outputs
- Practical RAG experience: embeddings, vector or hybrid search, chunking strategies, and judging retrieval quality
- Solid software engineering in Python and/or Java clean, tested, maintainable code; comfortable working in an existing Java backend
- API and integration skills: REST, JSON, authentication, and connecting services to existing business systems
- Relational database fluency strong SQL; Oracle experience preferred, PostgreSQL or MySQLaccepted
- A habit of evaluating AI output systematically test sets, metrics, regression checks rather than by impression
- Strong problem-solving skills and the ability to work independently and collaboratively
- Experience with Agile methodologies and fast-paced delivery cycles
- Professional-level English, written and verbal your primary working language with the Italian team
Nice to Have
- Agent frameworks and protocols (Model Context Protocol, LangChain/LangGraph, LlamaIndex, Spring AI or similar)
- Experience with vector databases or search engines (pgvector, Oracle AI Vector Search, Elasticsearch/OpenSearch, Azure AI Search)
- LLM observability and evaluation tooling (e.g. Langfuse, LangSmith, promptfoo or your own)
- Java with Spring Boot or JAX-RS, JPA/Hibernate
- Containerisation and deployment (Docker, Kubernetes) and CI/CD pipelines (Jenkins, GitHub Actions or equivalent)
- Cloud experience, especially Azure (also AWS)
- Security for AI systems: prompt injection, data leakage, access control, GDPR
- Familiarity with Keycloak, OpenID Connect, OAuth 2 or JWT
- Frontend basics (TypeScript, Angular) to build simple user interfaces for AI features
- Domain experience in publishing, rights & royalties, or enterprise support and service management
- You don't need to tick every box. We value the ability to learn quickly and adapt over an exact match on the tech stack.
عن الوظيفة:
نحن نبحث عن مطور ذكاء اصطناعي للانضمام إلى فريق الهندسة في Klopotek من مكتبنا في بيروت. ستعمل عن بُعد جنبًا إلى جنب مع فريق التطوير لدينا في جويا ديل كولي، إيطاليا لتصميم وبناء وتشغيل قدرات مدعومة بالذكاء الاصطناعي داخل البرنامج الذي يدير عمليات النشر لكبرى دور النشر العالمية.
هذا دور هندسي عملي، وليس منصبًا بحثيًا. ستقوم بدمج نماذج لغوية كبيرة في أنظمة الإنتاج: الاسترجاع عبر معرفة منتجاتنا، ومساعدي الذكاء الاصطناعي للدعم والعمليات، وسير عمل الوكلاء التي تعمل على بيانات أعمال حقيقية، وميزات الذكاء الاصطناعي داخل منتجاتنا. تم بناء منصتنا الأساسية على Java وOracle، لذا ستعمل بالقرب من تلك التقنيات لربط خدمات الذكاء الاصطناعي بواجهات برمجة التطبيقات (APIs) الحالية، والبيانات ومنطق الأعمال، وجعلها موثوقة وآمنة وقابلة للقياس.
ستنضم إلى فريق صغير ومتنامٍ من Klopotek في لبنان؛ حيث يعمل معنا بالفعل أربعة زملاء من بيروت، وهذا الدور جزء من توسع متعمد لوجودنا الهندسي هناك. سيكون لديك مجموعة أقران حقيقية محليًا، وستعمل بشكل وثيق مع فريق التطوير الإيطالي يوميًا.
هذا الدور لا يكافئ من يعرف المصطلحات الرنانة فقط. إنه دور لشخص لديه دافع ذاتي، ومؤسس تقنيًا، ومتحمس حقًا للتعلم؛ شخص يمكنه التمييز بين نموذج أولي مقنع ومنتج يمكن الاعتماد عليه، وشخص يتولى المسؤولية من الفكرة وصولاً إلى الإنتاج.
ما ستفعله
- تصميم وبناء وتشغيل الميزات والخدمات المدعومة بالنماذج اللغوية الكبيرة (LLM) من النموذج الأولي الأول إلى الإنتاج الخاضع للمراقبة
- بناء خطوط أنابيب توليد معزز بالاسترجاع (RAG) عبر وثائق المنتج، ومعرفة التكوين، وسجل الدعم: الاستيعاب، والتقطيع، والتمثيلات المتجهية (embeddings)، والبحث والتصنيف
- تطوير سير عمل الوكلاء وتكامل الأدوات (على سبيل المثال عبر بروتوكول سياق النموذج) التي تسمح للذكاء الاصطناعي بالعمل بأمان مع واجهات برمجة التطبيقات، وأنظمة التذاكر، وبيانات الأعمال الخاصة بنا
- دمج خدمات الذكاء الاصطناعي مع خدمات الواجهة الخلفية (Backend) الخاصة بنا المستندة إلى Java، وواجهات برمجة تطبيقات REST، وقواعد بيانات Oracle
- بناء مجموعات تقييم ومجموعات اختبار حتى نعرف بالأرقام ما إذا كان التغيير يجعل ميزة الذكاء الاصطناعي أفضل أم أسوأ
- هندسة المطالبات (Prompts)، والسياق، وحواجز الحماية؛ التعامل مع الهلوسة، وخصوصية البيانات، والتحكم في الوصول، والتكلفة من البداية، وليس كفكرة لاحقة
- مراقبة ميزات الذكاء الاصطناعي في الإنتاج: الجودة، وزمن الاستجابة (Latency)، وتكلفة الرموز (Token cost)، وأنماط الفشل وتحسينها باستمرار
- العمل مع زملاء الدعم والمنتج والعمليات لتحويل حالات الاستخدام الحقيقية إلى أدوات يستخدمها الناس بالفعل
- التعاون بشكل غير متزامن ومتزامن مع فريق التطوير الإيطالي وأصحاب المصلحة متعددي الوظائف
- المشاركة في مراجعات الكود؛ تقديم وتلقي ملاحظات صادقة وبناءة
- مشاركة ما تتعلمه: مساعدة المطورين الآخرين على تبني التطوير بمساعدة الذكاء الاصطناعي وكتابة وثائق يمكن للشخص التالي استخدامها بالفعل
- استخدام أدوات البرمجة بالذكاء الاصطناعي بفعالية وبشكل نقدي في عملك الخاص مع تحمل المسؤولية الكاملة عما يتم إصداره
كيف تعمل
نحن نوظف بناءً على العقلية بقدر ما نوظف بناءً على المهارات. الشخص المناسب لهذا الدور:
- فضولي حقًا وذو دافع ذاتي؛ أنت تتابع المجال لأنك تريد ذلك، ويمكنك الفصل بين التقدم الحقيقي والضجيج
- متشكك افتراضيًا؛ أنت تقيس قبل أن تصدق، وتعرف أن العرض التوضيحي الجيد ليس دليلاً
- يفكر في الأنظمة؛ أنت تنظر في كيفية تفاعل النماذج والبيانات وواجهات برمجة التطبيقات والأشخاص، وأين تنهار الأمور، وكيفية التصميم من أجل المرونة، وليس فقط المسار المثالي
- يحل المشكلات حتى عندما لا يكون المسار واضحًا؛ أنت تحقق، وتجرب، وتكرر
- يفكر في المستخدم؛ أنت تبني ميزات ذكاء اصطناعي تناسب كيفية عمل الناس فعليًا، وليس ميزات تستعرض التكنولوجيا
- يتواصل بوضوح وبشكل استباقي في فريق موزع؛ أنت لا تنتظر من يلاحقك، بل تشير إلى المعوقات مبكرًا وتبقي الزملاء على اطلاع
- يتحدى الأفكار بشكل بناء ويكون مرتاحًا عند تحديه في المقابل؛ يتولى مسؤولية الميزات من البداية إلى النهاية، وليس فقط التذكرة المخصصة لك
- مرتاح مع الغموض والأدوات والمتطلبات سريعة التغير
-
- خبرة مثبتة في بناء وإصدار تطبيقات تعتمد على النماذج اللغوية الكبيرة (LLM) لمستخدمين حقيقيين وليس مجرد تجارب أو برامج تعليمية
- خبرة عملية في واجهات برمجة تطبيقات النماذج اللغوية الكبيرة (مثل Anthropic Claude، OpenAI، Azure OpenAI) بما في ذلك استخدام الأدوات / استدعاء الوظائف والمخرجات المهيكلة
- خبرة عملية في RAG: التمثيلات المتجهية، والبحث المتجهي أو الهجين، واستراتيجيات التقطيع، وتقييم جودة الاسترجاع
- هندسة برمجيات قوية بلغة Python و/أو Java؛ كود نظيف ومختبر وقابل للصيانة؛ مرتاح في العمل في واجهة خلفية موجودة بلغة Java
- مهارات واجهات برمجة التطبيقات والتكامل: REST، JSON، المصادقة، وربط الخدمات بأنظمة الأعمال الحالية
- طلاقة في قواعد البيانات العلائقية؛ SQL قوية؛ يفضل خبرة Oracle، ويتم قبول PostgreSQL أو MySQL
- عادة تقييم مخرجات الذكاء الاصطناعي بشكل منهجي؛ مجموعات الاختبار، والمقاييس، وفحوصات الانحدار بدلاً من الانطباع الشخصي
- مهارات قوية في حل المشكلات والقدرة على العمل بشكل مستقل وتعاوني
- خبرة في منهجيات Agile ودورات التسليم السريعة
- إنجليزية بمستوى احترافي، كتابةً وتحدثًا؛ لغة عملك الأساسية مع الفريق الإيطالي
ميزات إضافية
- أطر عمل وبروتوكولات الوكلاء (بروتوكول سياق النموذج، LangChain/LangGraph، LlamaIndex، Spring AI أو ما شابه)
- خبرة في قواعد البيانات المتجهية أو محركات البحث (pgvector، Oracle AI Vector Search، Elasticsearch/OpenSearch، Azure AI Search)
- أدوات مراقبة وتقييم النماذج اللغوية الكبيرة (مثل Langfuse، LangSmith، promptfoo أو أدواتك الخاصة)
- Java مع Spring Boot أو JAX-RS، JPA/Hibernate
- الحاويات والنشر (Docker، Kubernetes) وخطوط أنابيب CI/CD (Jenkins، GitHub Actions أو ما يعادلها)
- خبرة في السحابة، خاصة Azure (وأيضًا AWS)
- أمن أنظمة الذكاء الاصطناعي: حقن المطالبات، تسرب البيانات، التحكم في الوصول، GDPR
- الإلمام بـ Keycloak، OpenID Connect، OAuth 2 أو JWT
- أساسيات الواجهة الأمامية (TypeScript، Angular) لبناء واجهات مستخدم بسيطة لميزات الذكاء الاصطناعي
- خبرة في مجال النشر، والحقوق والإتاوات، أو دعم المؤسسات وإدارة الخدمات
- لا تحتاج إلى استيفاء كل شرط. نحن نقدر القدرة على التعلم بسرعة والتكيف أكثر من المطابقة الدقيقة لمجموعة التقنيات.
ما نقدره
- التعلم أكثر من المعرفة
- الأدلة أكثر من الضجيج
- التكيف أكثر من الجمود
- حل المشكلات أكثر من استيفاء الشروط
- المسؤولية أكثر من تنفيذ المهام
- التعاون الصادق والمباشر أكثر من الهرمية، وثقافة التغذية الراجعة الصادقة
الملف الشخصي للمرشح المطلوب
- خبرة مثبتة في بناء وإصدار تطبيقات تعتمد على النماذج اللغوية الكبيرة (LLM) لمستخدمين حقيقيين وليس مجرد تجارب أو برامج تعليمية
- خبرة عملية في واجهات برمجة تطبيقات النماذج اللغوية الكبيرة (مثل Anthropic Claude، OpenAI، Azure OpenAI) بما في ذلك استخدام الأدوات / استدعاء الوظائف والمخرجات المهيكلة
- خبرة عملية في RAG: التمثيلات المتجهية، والبحث المتجهي أو الهجين، واستراتيجيات التقطيع، وتقييم جودة الاسترجاع
- هندسة برمجيات قوية بلغة Python و/أو Java؛ كود نظيف ومختبر وقابل للصيانة؛ مرتاح في العمل في واجهة خلفية موجودة بلغة Java
- مهارات واجهات برمجة التطبيقات والتكامل: REST، JSON، المصادقة، وربط الخدمات بأنظمة الأعمال الحالية
- طلاقة في قواعد البيانات العلائقية؛ SQL قوية؛ يفضل خبرة Oracle، ويتم قبول PostgreSQL أو MySQL
- عادة تقييم مخرجات الذكاء الاصطناعي بشكل منهجي؛ مجموعات الاختبار، والمقاييس، وفحوصات الانحدار بدلاً من الانطباع الشخصي
- مهارات قوية في حل المشكلات والقدرة على العمل بشكل مستقل وتعاوني
- خبرة في منهجيات Agile ودورات التسليم السريعة
- إنجليزية بمستوى احترافي، كتابةً وتحدثًا؛ لغة عملك الأساسية مع الفريق الإيطالي
ميزات إضافية
- أطر عمل وبروتوكولات الوكلاء (بروتوكول سياق النموذج، LangChain/LangGraph، LlamaIndex، Spring AI أو ما شابه)
- خبرة في قواعد البيانات المتجهية أو محركات البحث (pgvector، Oracle AI Vector Search، Elasticsearch/OpenSearch، Azure AI Search)
- أدوات مراقبة وتقييم النماذج اللغوية الكبيرة (مثل Langfuse، LangSmith، promptfoo أو أدواتك الخاصة)
- Java مع Spring Boot أو JAX-RS، JPA/Hibernate
- الحاويات والنشر (Docker، Kubernetes) وخطوط أنابيب CI/CD (Jenkins، GitHub Actions أو ما يعادلها)
- خبرة في السحابة، خاصة Azure (وأيضًا AWS)
- أمن أنظمة الذكاء الاصطناعي: حقن المطالبات، تسرب البيانات، التحكم في الوصول، GDPR
- الإلمام بـ Keycloak، OpenID Connect، OAuth 2 أو JWT
- أساسيات الواجهة الأمامية (TypeScript، Angular) لبناء واجهات مستخدم بسيطة لميزات الذكاء الاصطناعي
- خبرة في مجال النشر، والحقوق والإتاوات، أو دعم المؤسسات وإدارة الخدمات
- لا تحتاج إلى استيفاء كل شرط. نحن نقدر القدرة على التعلم بسرعة والتكيف أكثر من المطابقة الدقيقة لمجموعة التقنيات.