Bir mühendisin işi elde bulunan probleme olabilecek en etkili çözümü getirmektir. Özellikle bilgisayar mühendisleri için asıl zor olan çözüm bulmak değildir genelde çözüm çoktan bulunmuştur. Asıl zor olan bulunan çözümün etkili bir hale getirilmesidir. Burada “etki” derken ne demek istediğimi bir örnekle anlatmak daha doğru olacaktır. Büyük Veri (Big Data) çok popüler bir konu. Bu kadar popüler olmasının sebebi günümüzde toplanan, üstünde çalışılan veri miktarı öyle çok ki bilgisayarların gücü bile yetmemeye başladı. Bununla baş etmenin bir yolu elinizdeki bilgisayarları güçlendirmek ya da sayılarını arttırmak ama bir noktadan sonra özellikle büyük şirketler için bu çok büyük bir masraf yani etkili bir çözüm değil. İşin yazılım kısmına bakarsak veriler ile oynamak için gerekli kodlar zaten birileri tarafından çoktan yazılmış ve internette bulunabiliyor yani problemin çözümü zaten bulunmuş. Kimisi aynı miktarda veriyi saniyeler içinde işlerken kimisi saatlerce süre boyunca işlemeye devam ediyor ama o saatlerce süren kodun başka avantajları olabiliyor. Hafızadan daha az tüketerek çalışabiliyor mesela. Yani çözüm bulunmuş bulunmasına ama duruma göre ne kadar etkili olduğu değişir. İşte zor olan kısım, asıl iş burada başlıyor. Elinizdeki probleme göre daha hızlı mı çözmeliyim yoksa daha az hafıza harcayarak mı çözmeliyim ya da şundan feda edip şundan kazanırsam daha mı iyi olur sorusuna verilen doğru yanıt etkili çözümü verir.Yazılımda genelde mükemmel peşinde koşmak hataya sebep olur. Bu yüzden bir yerden kazanırken bir yerden feda edersiniz.