MLOps Engineer/Solution Architect

Bell Integrator

ベルインテグレーター — MLOpsエンジニア、シニアレベル。 形式: オフィスワーク。 都市 - モスクワ。 給与は求人票には明記されておらず、面接時に相談させていただきます。 私たちは、ロシアの大手銀行におけるプロセスとITエコシステムの複雑さを管理し、統合ソリューションの設計と開発を行う才能あるMLOpsエンジニア/ソリューションアーキテクトを探しています。 チームはグローバル市場におけるビジネスのAIイニシアティブを担当し、ブースティングやモデルのアンサンブルから大規模言語モデル(LLM)まで、ML/DLアルゴリズムとツールを用いて幅広いデータサイエンスの課題を解決します。 基本的な要件: - 3〜4年の職務経験 - Pythonによる産業開発の経験 - 人気のあるRDBMS(Greenplum、Teradata、Oracle、PostgreSQL)での作業経験 - Hadoopエコシステム製品の統合経験(HDFS、Hive、Sparkなど) - サービスとメッセージブローカー(Kafka、RabbitMQ)の同期および非同期統合の経験 - JenkinsとBitbucket/Gitを基盤としたCI/CDソリューションの設計経験 - 仮想化およびコンテナ化技術の経験 - マイクロサービスアーキテクチャの設計と開発の経験 追加の(望ましい)要件: - 企業の分析またはデータ処理の異種アーキテクチャの設計(コンポーネントの選択)、展開、およびその後の最適化、特に:ラムダアーキテクチャ、データレイク、データレイクハウス - 現代のシステムコンポーネントの可能性についての広い視野 - プロトタイプや概念実証ソリューションの独自開発の経験 - 機械学習モデルの作成原則の理解および/または機械学習に関するコースの受講および/またはモデルの導入経験 職務内容: - データサイエンティストやプロダクトオーナーと共同で、開発中のアプリケーションのためのアーキテクチャ/統合ソリューションに関する要件を特定します。 - 要求の分解と文書化 - 企業アーキテクト、サイバーセキュリティの専門家、サポートチームと共同で、技術コンポーネントの選定と統合ソリューションの設計を行います。 - 統合ソリューションとコードテンプレートの開発、開発プロセスと本番環境への展開のスケーリングおよび標準化のため。 - 私たちのアプリケーションのプラットフォームとインフラストラクチャの概念アーキテクチャの設計と開発 Conditions: - 社内での専門性とキャリアの成長の機会 - 分散した専門家チームで働いた経験 - 給与水準は個別にご相談させていただきます - Bell Integrator でのロシア連邦労働法に基づく登録 - ハイブリッド勤務形式:モスクワ/ヴァヴィロワ19 出典: Habr Career、2026 年 8 月 3 日に公開。 回答は元のページにあります。

MLOps-инженер · Senior · Python · Apache Hadoop · Apache Kafka · CI/CD · Oracle · PostgreSQL · RabbitMQ · Greenplum · Jenkins · Москва

Apply

More roles at Bell Integrator

Workix

{{ siteBrand.name }}
{{ prevSlogan }} {{ currentSlogan }}
{{ t('loading') }}

{{ t('onboarding_title') }}

{{ t('onboarding_sub') }}

{{ t('agent_connect_title') }}

{{ t('agent_connect_hint') }}

{{ agentPrompt }}

{{ t('partners_title') }}

{{ t('partners_sub') }}

{{ t('partners_embed_title') }}

{{ t('partners_embed_body') }}

{{ t('cases_title') }}

{{ t('cases_sub') }}

{{ c.title }}

{{ c.summary }}

{{ t('cases_outcome') }}: {{ c.outcome }}

{{ tag }}
{{ t('loading') }}
{{ t('loading') }}
← {{ t('back') }}
{{ t('empty_orders') }}
{{ t('order_title') }} · {{ kindLabel(currentOrder.kind || currentOrder.type) }}

{{ currentOrder.title }}

{{ statusLabel(currentOrder.status) }} {{ appliedLabel(currentOrder.applied.count) }} · {{ t('applied_by_you') }} {{ currentOrder.project }}
{{ tag.name || tag }}

{{ t('applied_title') }}

{{ t('applied_hint') }}

{{ t('applied_login') }}

{{ t('nav_auth') }}
{{ t('applied_at') }}: {{ fromNow(myApplication.appliedAt) }} · {{ myApplication.via }}

{{ t('proposals_title') }}

{{ t('proposal_place') }}
{{ fromNow(p.date) }}
{{ t('contact') }} {{ t('proposal_score') }}: {{ p.score }}

{{ t('proposal_yours') }}

{{ t('proposal_login') }}

{{ t('nav_auth') }}
{{ t('proposal_score') }}: {{ formProposal.score }}
← {{ t('back') }}
{{ t('performer_title') }}

{{ currentPerformer.name }}

{{ currentPerformer.headline }}

{{ availabilityLabel(currentPerformer.availability) }} {{ currentPerformer.location }} {{ (currentPerformer.openTo||[]).join(', ') }}
{{ t('performer_rate') }}: {{ formatMoney(budgetView(currentPerformer).amount) }}
{{ tag.name || tag }}
GitHub {{ contactLabel(c.kind) }} {{ t('no_contact') }}

{{ t('performer_projects') }}

{{ t('performer_orders') }}

{{ r.title }}

{{ r.description }}

{{ kindLabel(r.kind || r.type) }}
{{ (r.title || '?').slice(0,1) }}

{{ r.title }}

{{ r.description }}

{{ r.startupName || r.startupSlug }}
← {{ t('back') }}
{{ statusLabel(routeError.code === 'pending_moderation' ? 'pending' : 'rejected') }}

{{ routeError.code === 'pending_moderation' ? t('project_pending') : t('project_rejected') }}

← {{ t('back') }}

{{ currentStartup.name }}

{{ currentStartup.url }} {{ currentStartup.github }}
{{ t('posted') }} {{ fromNow(currentStartup.createdAt) }}
{{ t('updated') }} {{ fromNow(currentStartup.updatedAt) }}
{{ statusLabel(currentStartup.status) }} {{ stageLabel(projectKind(currentStartup)) }}
{{ t('project_publisher') }}
{{ currentStartup.publisher.name }}

{{ currentStartup.publisher.headline }}

{{ t('performer_title') }}

{{ t('roles') }}

{{ t('no_roles') }}

{{ r.title }}

{{ tag }}
{{ t('highlight_badge') }}

{{ t('carousel_title') }}

← {{ t('back') }}

{{ t('apply_title') }}

{{ t('apply_target_hint') }}

{{ (currentStartup && currentStartup.name) || currentRole.startupSlug }}
{{ currentRole.title }}

{{ currentRole.description }}

{{ kindLabel(currentRole.kind) }} {{ currentRole.payment.budget }} {{ currentRole.payment.cur || 'USDT' }} {{ tag }}

{{ t('proposal_login') }}

{{ t('nav_auth') }}
{{ t('proposal_score') }}: {{ formApply.score }}
{{ t('apply_external') }}

{{ t('auth_title') }}

{{ t('nav_auth') }}

{{ t('mine_empty') }}

{{ t('create_order') }}

{{ route.slug ? t('edit_startup') : t('create_startup') }}

{{ t('agent_form_title') }}

{{ t('agent_form_hint') }}

{{ agentPrompt }}

{{ formRole._id ? t('edit_role') : t('create_order') }}

{{ t('agent_form_title') }}

{{ t('agent_form_hint') }}

{{ agentPrompt }}

{{ formRole.startupId ? t('task_attach_project_hint') : t('task_attach_standalone_hint') }}

{{ t('profile_title') }}

{{ t('agent_form_title') }}

{{ t('agent_form_hint') }}

{{ agentPrompt }}
{{ t('profile_agent_key_title') }}

{{ t('profile_agent_key_hint') }}

{{ t('auth_registered') }}
{{ displayedAgentKey }}

{{ t('profile_agent_key_hidden') }}

{{ t('profile_agent_key_none') }}



{{ t('prefs_title') }}

{{ t('support_title') }}

{{ t('support_sub') }}

{{ t('support_limit_hint') }}

{{ t('auth_title') }}

{{ t('auth_mvse_hint') }}

{{ t('auth_signed_in') }} {{ me.name || me.id }}
{{ t('auth_section_browser') }}

{{ t('auth_mvse_hint') }}

{{ t('auth_section_key') }}

{{ t('auth_key_hint') }}

{{ t('auth_registered') }}
{{ onceKey }}
{{ toast }}