برنامهنویس جاوا سنیور (Senior Java Developer)
شرح وظایف اصلی:
طراحی و مالکیت معماری سیستمهای بزرگ مقیاس (Monolith / Modular / Microservices)
تصمیمگیری آگاهانه در انتخاب تکنولوژیها، فریمورکها و الگوهای طراحی
طراحی ساختار ماژولها، لایهها، Boundaryها و Contractها
تحلیل و مدیریت Technical Debt
تعریف استانداردهای کدنویسی، لاگینگ، خطا، امنیت و Performance
بازبینی عمیق کدها با تمرکز بر معماری، نگهداشتپذیری و مقیاسپذیری
هدایت فنی تیم توسعه و منتورینگ فعال میدل و جونیور
همکاری موثر با Product Owner و System Analyst برای تبدیل نیازمندیها به راهحلهای فنی پایدار
شناسایی گلوگاههای کارایی و ارائه راهحلهای بهینهسازی
مهارتها و دانش فنی مورد انتظار (سطح پیشرفته)
تسلط عمیق و تجربی به Java (Concurrency، Memory Model، JVM، GC)
تسلط کامل به اکوسیستم Spring
Spring Boot
Spring Security (Authentication / Authorization / OAuth2 / JWT)
Spring Data (JPA Performance, Transactions)
طراحی و پیادهسازی Microservices Architecture
درک عمیق از Distributed Systems (Consistency, Availability, Fault Tolerance)
تسلط بر Design Patterns در سطح کاربردی و انتخاب آگاهانه
تسلط بر Clean Architecture، DDD (حداقل Tactical Patterns)
تجربه عملی در بهینهسازی Performance در سطح کد، دیتابیس و معماری
درک عمیق از Security Concerns در سیستمهای سازمانی
آشنایی عملی با CI/CD، Versioning، Migration و Deployment Strategy
ویژگیهای فردی (سطح لید فنی)
تفکر سیستمی و بلندمدت
توانایی تحلیل اثر تصمیمات فنی بر کسبوکار
مسئولیتپذیری کامل نسبت به کیفیت خروجی تیم
قدرت تصمیمگیری در شرایط عدم قطعیت
مهارت بالای منتورینگ و انتقال دانش
اقتدار فنی همراه با تعامل حرفهای