Where Design Meets Meaning

With over twenty years of experience in visual design and interactive media, I’ve developed a broad skill set that allows me to shape every stage of visual communication — from concept to final production. My approach combines creative intuition with technical precision, turning ideas into meaningful visual narratives.

    My work covers a wide spectrum of visual communication — connecting creative concept, aesthetics, and technical execution across the following areas:
  • E-commerce, corporate, and promotional websites — complete developing from initial concept and design to full implementation, including advanced UX and modern technical solutions
  • UX&UI solutions for large-scale systems and media platforms
  • Brand identity — concept creation, design, and long-term development
  • Key visuals for advertising and promotional campaigns
  • Motion design and animation for social media and digital platforms
  • Video editing and photo retouching for marketing and editorial use
  • Editorial illustrations created using a unique, self-developed photorealistic collage technique

My experience spans leading international agencies, major media brands, and one of the largest broadcasting companies in Europe — shaping a creative perspective that bridges design, storytelling, and technology.

want to work together?

Just send us a quick message and briefly describe your project.

const encodedEmail = [ 'mitjamitic','@','proton.me' ].join(''); const btn = document.getElementById('revealEmailBtn'); const place = document.getElementById('emailPlace'); const block = document.getElementById('emailBlock'); btn.addEventListener('click', () => { btn.disabled = true; btn.textContent = 'Loading…'; setTimeout(() => { // Show email place.innerHTML = '' + encodedEmail + ''; btn.remove(); // Fireworks burst for (let i = 0; i fw.remove(), 900); } }, 600); // delay before reveal }); function randomColor() { const colors = ['#ff4081', '#ffd740', '#69f0ae', '#40c4ff', '#ff6e40']; return colors[Math.floor(Math.random() * colors.length)]; }