Melt butter in a skillet over medium heat. Add onion and carrot; sauté for 4–5 minutes until softened and lightly golden.
In a large soup pot, bring water to a gentle boil. Add potatoes and rinsed millet. Reduce heat and cook for 12–15 minutes until potatoes are tender.
Stir in sautéed onion and carrot. Add canned salmon with juices (bones removed), flaking into chunks.
Add bouillon, pepper, and bay leaves. Simmer for 10 minutes so flavors meld.
Remove bay leaves. Taste, adjust seasoning, and serve hot with fresh dill on top.