Hire the Best QML Developers

More than 3,000 reviews on G2
Rating is 4.5 out of 5.
4.5/5
of Upwork by G2 peer reviewers
Iyas A.

Muscat, Oman

$50/hr
4.6
15 jobs

I am a Software engineer with 13+ years building production systems in fintech and payments including trading engines, payment platforms, and PCI-sensitive services. I design and ship backend services end to end: architecture, implementation, testing, CI/CD, and production support. Recent work spans Java/Kotlin microservices, Go services, and Elixir platforms, with Kubernetes, GCP, Vault, Kafka, and PostgreSQL. I work well in consulting and product settings including clarifying requirements, choosing pragmatic tech, and owning delivery through production. Languages Java, Kotlin, Go, Python, Ruby, Elixir, QML, JavaScript Frameworks & Libraries Spring Boot, Hibernate, Phoenix, ASP.NET, JavaFX, DevExpress Cloud & Infrastructure GCP, AWS, Kubernetes, Docker, Helm Charts, Terraform CI/CD & Automation Jenkins, GitHub Actions, Flux CD, Shell scripting, Linux Messaging & Streaming Apache Kafka, Apache Flink, RabbitMQ Databases PostgreSQL, MySQL, Redis, InfluxDB, Elasticsearch Security & Vault HashiCorp Vault, JWT, OIDC, PCI compliance Testing JUnit, Mockito, TDD Build Tools Maven, Gradle Other REST APIs, Microservices, Event-driven design, Domain-driven design, Git, Prometheus, NLP basics

  • Hibernate
  • Java Persistence API
  • Microservice
  • Apache Maven
  • Java
  • Spring Boot
  • Kotlin
  • Gradle
  • Docker
  • Redis
  • Kubernetes
  • Git
  • PostgreSQL
  • Apache Kafka
  • Google Cloud Platform
Yuriy S.

Lviv, Ukraine

$45/hr
4.9
33 jobs

C++ / Qt engineer, 20+ years. I build the software that runs machines and instruments: embedded Linux firmware, Qt/QML operator HMIs, and the cross-platform desktop workbench engineers use to configure, calibrate and log. RECENT WORK - HPLC syringe pump - control software for an analytical laboratory instrument. - Firmware, control suite and workbench for the Multistage cable-stripping machine. - ScanScore / Forte / Bandora - 8 years on cross-platform music-notation software in Qt: optical score recognition, MIDI, PDF export. - Debian POS server - multithreaded C++ service, PostgreSQL, ESC/POS thermal printing, deployed onsite. 18,000 hours on Upwork at 100% Job Success, Top Rated Plus. WHAT YOU GET I lead a small Lviv team - firmware, HMI and desktop under one contract - and I stay hands-on in C++/Qt myself. You talk to me, not to an account manager. - Embedded & HMI: STM32, Arduino, embedded Linux, Qt/QML touch panels, industrial operator screens. - Desktop: cross-platform Qt for Linux and Windows; C#/.NET (WPF, WinForms, DevExpress) when the Windows side needs it. - Data: PostgreSQL, MS SQL, multithreaded C++ services, reporting, printing, installers. HOW I RUN PROJECTS - YOU SEE EVERYTHING Offshore teams fail on visibility, not on code. The process is built to remove that risk: - Private Jira server - you get an account and watch the board in real time. - Every code change is linked to its Jira task. Nothing lands untracked. - Code lives on our BitBucket Git server; you get access. - Every reported developer hour carries the developer's own comment explaining it. - Weekly and monthly reports, generated - not improvised. - A working demo build every week. You judge progress by running it, not by reading a status update. Scope is agreed as Work / Time / Budget with defined milestones before anything starts. Background: SoftServe 2002-2008, developer to tech lead; then my own team since 2014. ALSO AVAILABLE: legacy Windows rescue - MFC, Win32, COM/ATL, Visual C++ 6.0, WinForms/.NET. The desktop applications other developers won't touch. I have been maintaining and modernizing them since 2002. Send me the machine, the instrument or the old application - I will tell you honestly whether we are the right fit.

  • QML
  • PostgreSQL
  • Qt Framework
  • Microsoft Foundation Class Library
  • C++
  • Python
  • Microsoft Visual C++
  • Docker
  • Standard Template Library
  • Django
  • SQL
  • React
  • Amazon Web Services
  • Modbus
  • PCB Design
  • Firmware
  • Embedded Application
  • ESP32
  • C#
  • DevExpress
Aleksey K.

Mykolayiv, Ukraine

$56/hr
5.0
1 jobs

With more than 20 years of experience in the IT industry, I have developed a solid foundation in software architecture, design, and development. My expertise spans across multiple programming languages and frameworks, including C/C++, Qt/QML, C#/.NET, JavaScript, Node.js, Python, and Golang, allowing me to create robust web services, backend systems, as well as client-server and rich desktop and mobile applications. My background also includes strong capabilities in database architecture and design, specifically with PostgreSQL. I also possess extensive experience working with REST APIs, MS Bot Framework, and neural network algorithms. My proficiency in managing foreign customer relationships, along with my excellent command of English and negotiation skills, make me a valuable asset to any team. I am a self-motivated leader with a penchant for project management. I have a proven track record of effectively solving complex problems and working well in team environments. I enjoy proposing and implementing universal solutions that benefit everyone involved, and I am committed to maintaining my physical fitness in order to optimize my work performance.

  • QML
  • C++
  • Qt Framework
  • SQL
  • PostgreSQL
  • Git
  • JavaScript
  • Node.js
  • C#
  • .NET Core
  • Docker
  • Linux
  • macOS
  • Android
Yevhenii A.

Kyiv, Ukraine

$40/hr
5.0
1 jobs

Senior Software Engineer with 13+ years of commercial experience delivering high-performance, scalable solutions across embedded systems, automotive, and AI-driven applications. Extensive expertise in C/C++ development, algorithms, and efficient system architecture. Proven experience building cross-platform applications using Qt and working within Linux-based environments, including Yocto for embedded systems. Experienced AI/ML practitioner, with a particular focus on computer vision. Hands-on experience designing, training, and optimizing deep learning models using Python, TensorFlow, and Keras, including work with modern architectures and real-world datasets. Strong background in automotive software development, where I served as a team leader on projects such as navigation systems and voice recognition, driving technical direction, mentoring engineers, and ensuring successful delivery. Skilled in real-time systems, multithreading, and performance optimization, with experience integrating communication protocols like MAVLink and working with robotics frameworks such as ROS. Proficient with a wide range of tools and technologies including STL, WinAPI, OpenGL/DirectX, SQLite, Protobuf, JSON, MATLAB/Simulink, and version control systems such as Git, SVN, and Gerrit. Experienced in development environments like Visual Studio and Qt Creator, and committed to high code quality through unit testing (Google Test) and engineering best practices.

  • Git
  • Microsoft Visual Studio
  • Python
  • C++
  • Object-Oriented Programming
  • Standard Template Library
  • Windows App Development
  • Qt Framework
  • Qt Creator
  • JavaScript
  • AWS Amplify
  • AWS Lambda
  • TensorFlow
  • Keras
  • Deep Learning
Shivansh M.

Indore, India

$45/hr
5.0
2 jobs

I evaluate, prototype, and document quantum and post-quantum systems. My work focuses on PQC migration roadmaps, QKD network simulations, quantum algorithm benchmarks, and scientific ML or QML pipelines. My background is in physics and quantum communication. For my MS thesis, I simulated QKD networks to analyze routing, resource allocation, and QBER behavior under noise constraints. Since then, I have built hybrid ML pipelines for materials prediction, drafted PQC migration strategies, and evaluated quantum algorithms for power grid infrastructure. What I do: - PQC migration: Cryptographic inventory, risk assessments using NIST standards, and phased transition planning. - Network simulation: Modeling BB84, QBER, error correction, and resource allocation. - Algorithm benchmarking: Code development and performance testing using Python, Qiskit, and -PennyLane. - Scientific ML & QML: Debugging and optimization of hybrid workflows. - Technical writing: Clear documentation for engineering, policy, and executive teams. I focus on the intersection of applied physics and quantum engineering. I help teams separate near-term utility from quantum hype, translate academic research into clean code, and write technical reports that stand up to expert review.

  • QML
  • Quantum Computing
  • Quantum Physics
  • Cryptography
  • Data Science
  • Research & Development
  • Python
  • Technical Writing
  • Scientific Writing
  • NIST Cybersecurity Framework
  • C++
  • Artificial Intelligence
  • Machine Learning
  • LaTeX
Beshoy B.

Cairo, Egypt

$5/hr
4.7
1 jobs

A professional programmer with expertise in C/C++ and Python, specializing in developing Qt Desktop Applications, AI, and data science projects, My passion for programming began when I was 18 years old. Since then, I’ve dedicated myself to creating innovative solutions and tackling complex challenges in the tech world, Over 7 years, I’ve worked on numerous projects, honing my skills in data analysis and AI development. I’m now focusing on opportunities in NLP AI projects, where I can apply my knowledge and creativity to make meaningful contributions.

  • Python
  • C
  • Desktop Application
  • C++
  • Qt Framework
  • MySQL Programming
  • PyQt
  • OpenGL
  • AVR Microcontroller
  • Embedded System
  • PyTorch
  • Automation
  • Selenium
  • Web Scraping

How it works

Post a job for freePost a job

Tell us what you need. Create your own job post or generate one with AI then filter talent matches.

Hire top talent fast

Consult, interview, and hire quickly, so you can meet the freelancers you're excited about.

Collaborate easily

Use Upwork to chat or video call, share files, and track project progress right from the app.

Payment simplified

Manage payments in one place with flexible billing options. Only pay for approved work, hourly or by milestone.

Don't just take our word for it

What does a QML developer do?

A qml developer builds user interfaces and application logic using Qt’s declarative QML language and the Qt Quick framework. This role focuses on creating responsive, hardware-accelerated graphical interfaces that run across desktop, mobile, and embedded platforms. The developer writes QML documents to define visual elements and integrates JavaScript for dynamic behavior within the interface. They also bridge these front-end components with C++ back-end systems to connect user interactions with core application data and functionality.

  • Authors structured QML documents and custom UI components by defining object hierarchies, properties, and imports within the Qt ecosystem. The developer uses QML syntax to declare visual items and layouts, ensuring the interface renders correctly on target devices. This work involves organizing code into reusable modules and maintaining clear separation between visual design and business logic.
  • Implements interactive behaviors by writing JavaScript functions and signal handlers directly within QML files or linked script files. The developer connects user inputs like clicks, swipes, and key presses to specific actions that update the interface state. This process requires managing asynchronous events and ensuring smooth animations without blocking the main rendering thread.
  • Exposes C++ backend objects to the QML layer by registering QObject-derived classes and their properties, methods, and signals. The developer configures the integration context so that QML code can read data from and invoke functions in the compiled C++ application core. This step enables the interface to reflect real-time changes in application state and trigger complex processing tasks behind the scenes.
  • Optimizes application performance by using the Qt Quick Compiler to precompile QML and JavaScript code into native machine code. The developer profiles the interface to identify bottlenecks in rendering or script execution and refactors code to reduce memory usage. They also manage the Qt Resource system to bundle QML files, images, and scripts efficiently into the final application package for deployment.

How to hire a QML developer on Upwork

Step 1: Post a job

Define your interface requirements and backend integration needs clearly to attract qualified candidates. Use the Job Post Generator powered by Uma™, Upwork's Mindful AI to draft a precise description in seconds. Describe your project goals in a few sentences, and Uma constructs a tailored post for this role. You can write a new post, update a saved draft, or reuse an existing post to save time.

  • Specify whether the work involves building new Qt Quick interfaces or maintaining legacy QML documents with JavaScript logic.
  • List required experience with Qt Creator, Qt Quick Compiler, and the Qt Resource system for packaging applications.
  • Clarify if the role requires bridging C++ back-end objects to QML properties, methods, and signals.

Step 2: Evaluate candidates

Review portfolios for clean QML component structures and evidence of performance optimization in deployed apps. Uma runs instant video interviews and builds shortlists with side-by-side comparisons to speed up your review process. Look for developers who demonstrate strong understanding of both UI design and underlying application logic.

  • Check for examples of complex UI behaviors implemented using in-QML JavaScript and signal handlers.
  • Verify experience with precompiling QML and JavaScript to improve runtime performance in production builds.
  • Look for proof of successful deployment across multiple platforms using Qt’s packaging tools.

Step 3: Interview your top choices

Discuss technical approaches to state management and component reusability within the Qt framework. Schedule and conduct interviews directly within Upwork Messages, which generates an immediate transcript and summary after each session. This keeps your hiring process organized and ensures you capture key details from every conversation.

  • Ask how they structure QML imports and manage module dependencies in large-scale projects.
  • Discuss their strategy for exposing C++ data models to QML views efficiently.
  • Request examples of debugging techniques they use within Qt Creator for complex UI issues.

Step 4: Agree on scope and begin work

Set clear milestones for UI component delivery and backend integration tasks. Use Upwork Messages and the contract workroom for all communication and project management to maintain a clear record. Identity verification, payment protection, hourly tracking, and project funds add security to your engagement.

  • Define deliverables such as specific QML documents, JavaScript behavior scripts, and C++ integration layers.
  • Agree on a schedule for iterative testing and feedback using Qt Creator’s debugging tools.
  • Establish criteria for final acceptance, including successful packaging via the Qt Resource system.

Upwork is not affiliated with and does not sponsor or endorse any of the tools or services discussed in this article. These tools and services are provided only as potential options, and each reader and company should take the time needed to adequately analyze and determine the tools or services that would best fit their specific needs and situation.

The rates and information provided in this article are based on current data and industry sources available at the time of publication. Freelance rates can vary depending on factors such as experience, location, project scope, and market conditions. Readers are encouraged to conduct their own research to confirm current rates and trends, as this information may change over time.

How much does hiring a QML developer cost?

Hiring a QML developer typically costs $500-$2,500 per project, depending on scope and experience. Final pricing depends on interface complexity, C++ integration depth, required Qt tooling setup, deployment targets, revision needs, and the freelancer's experience level.

Qt Quick UI prototyping

$500-$1,200/project

Entry-level to mid-level
  • Reusable QML documents with defined imports
  • Functional UI screens with JavaScript behaviors
  • Configured Qt Creator workspace for iteration

QML component development

$1,200-$2,500/project

Mid-level
  • Styled QML elements with signal handlers
  • Logic for UI transitions and property bindings
  • Packaged QML and JavaScript files via Qt resources

C++ and QML integration

$2,500-$4,500/project

Mid-level to senior-level
  • Exposed QObject properties and methods to QML
  • Connected back-end signals to front-end updates
  • Verified data flow between C++ and QML layers

Performance optimization

$4,500-$7,000/project

Senior-level
  • Identified bottlenecks in rendering and logic
  • Refactored QML with Qt Quick Compiler support
  • Reduced resource usage in deployed application

Cross-platform deployment

$7,000-$12,000/project

Expert-level
  • Automated packaging for target operating systems
  • Adjusted UI layouts for desktop and mobile screens
  • Compiled binaries with bundled QML resources

Frequently asked questions

Is hiring a QML developer worth it?

For most businesses, yes: hiring a QML developer is worthwhile. These specialists build fluid user interfaces for Qt applications that run on desktop, mobile, and embedded devices from a single codebase. You avoid maintaining separate UI code for each platform when you hire one expert to author QML documents and integrate them with C++ back ends.

How do I evaluate QML developer candidates?

Look for candidates who demonstrate specific experience bridging QML front ends with C++ logic using Qt’s integration patterns. Ask them to explain how they expose QObject properties or signals to QML, as this mechanism is central to connecting UI behavior with application data. A strong candidate will describe using Qt Creator to debug these connections and optimize performance with the Qt Quick Compiler.

What is the difference between QML and Qt Quick?

QML is the declarative language used to define user interface components, while Qt Quick is the framework that renders those components on screen. Developers write QML code to structure the UI and use Qt Quick modules to handle animations, transitions, and visual elements.

Can QML developers work with existing C++ codebases?

Yes, QML developers frequently integrate new UI layers with established C++ back ends. They expose C++ classes to the QML engine so the interface can access data and trigger functions without rewriting core application logic.