İletişim becerilerim yazılım mühendisliği kariyerinde mi harcanacak? [kapalı]


40

Yaklaşık 5 yıl (% 20 analiz / programlama,% 80 iletişim) finansal mühendislik alanında (BA Math ve BA Computer Science'tan sonra) bulundum ve insanlarla iletişim kurma ve teknik sorunları tartışma (yani etkileşime girme becerisi) ile gurur duyuyorum bir ekiple). İşimin bu bölümünü seviyorum. Soyut fikir ve beyin fırtınası çizmek için beyaz tahtaya gidiyor.

Ancak, birçok nedenden dolayı kariyerimi bir teknoloji şirketine (yazılım mühendisliği) dönüştürmek istiyorum, ancak programcıların büyük kulaklıklarla kod verdiği klişeleşmiş bir programlama işine gireceğimden korkuyorum. Bunun sadece bir klişe olduğunu kesinlikle biliyorum ama daha önce (başlangıçlarda) benzer ortamlara şahit oldum ve beni tecrit kariyerine geçireceğimi düşünmekten korkuyor.

Kodlamayı ve algoritmik olarak düşünmeyi seviyorum, ama insanlarla etkileşmekten vazgeçmek istemiyorum. İletişim becerilerine sahip olmanın sadece olumlu bir şey olduğunu anlıyorum, ancak yazılım mühendisliğine geçerek kariyer-mutluluk başarısızlığına kendimi hazırlıyorum. Her türlü açıklamayı ve / veya tavsiyeyi duymayı çok isterim.


14
Buradaki cevapların biraz yanlı olabileceğinin farkındasın, değil mi?
JB King,

2
Kesinlikle, ancak şu ana kadarki cevaplar çok iyi ve bilgilendirici oldu.
Ryan

Umarım, sorunuzun benim gibi programlama konusunda iyi olan ancak İK tarafından bıkmakta olan (ve o altın işi almayanlar) garip geldiğini fark edersiniz, çünkü iletişim departmanında biraz eksiktirler. İletişim becerileri kesinlikle bir artı, özellikle bir takım projesi (scrum + standup toplantıları ...) ve uzaktan çalışma bağlamında. Ayrıca, gereksinimlerin üzerinden geçerken bazı yeniden düzenlemelerin gerçekleştiğini göreceksiniz. Daha az programlama ve daha fazla koordinasyon içeren bazı sorumluluklar var.
James P.,

Kesinlikle Hayır ..
Louis Rhys,

2
Hem sözlü hem de yazılı bir bilgisayar dilinde fikirlerini ifade edemeyen bir yazılım mühendisi hiçbir şeye değmez.
Ramhound

Yanıtlar:


53

İşte programlama ile ilgili sır: bu neredeyse% 100 iletişim . Bunun önemli bir kısmı bir insanla iletişim kurmak; Gerisi az önce öğrendiklerinizi bir bilgisayara aktarıyor.

İkinci bölüm ikisinin daha kolay. Bilgisayarlar söyleneni aynen yaparlar ve söylediklerinizin doğru olduğunu test etmek için her zaman bir konumdasınızdır.

İlki başka bir şey. Terminolojilerde, anlayışta, önceliklerde, kişiden kişiye, bilgisayardan beslenecek doğru mesajı almayı çok zorlaştırır. Bu seviyedeki yanlış iletişim, bir programlayıcı ve bilgisayar arasındaki yanlış iletişimden çok daha yaygındır.

İyi programcılar bilgisayar ile iletişimde iyidir; Büyük programcılar insanlarla, bir orta yolla ya da başkalarıyla iletişim kurmada iyidir.

Gördüğün şu programcılar kulaklıklarından hiç çıkmadılar mı? Yine de bu iletişimi yapıyorlar, e-postayla mı, bir hata izleyiciden mi, hatta mesajlaşma yoluyla mı. Her şey oluyor, aksi takdirde bilgisayara ne yapmaları gerektiğini bilemezler.

Yani evet, iletişim becerileriniz size iyi hizmet edecek.


Bir bütün olarak iletişimi iyi noktaya koymak, ancak kişisel toplantılara vurgu yapmak daha özel ve yazılı olarak değişebilir.
JeffO

Uygulamanın önerilen iki bölümden daha kolay olduğuna inanıyorsanız, ya kötü bir ekiple çalışıyorsunuz ya da yaptığınız uygulama çok kolay. Uygulama hakkında konuşmaya karşı uygulama için harcanan çalışma saatlerini sayın: uygulama açıkça toplamın 2 / 3'ü olmalıdır; değilse, yöneticinizin patronuyla özel bir toplantıya ihtiyacı var.
Jonathan Cline IEEE

6
@Jonathan: Zor ve zaman alıcı arasında oldukça güçlü bir ayrım yapardım.
pdr,

3
zamanla bir bilgisayarla iletişim kurmanın insanlar kadar zor olduğunu öğrendim . Şey kod ben yazma çoğu sonradan başkası tarafından okunan (yani başkası kendimi şaşırtıcı bunu yapmaz bir ay sonra olabilir daha az zor) - esasen sadece insanlara iletişim için bize geri döner bana hangi yazılı ve dolaylı form. Kod geleceğe bir mektuptur, kodlayıcı bir yazardır. Joyce biri var mı?
tatarcık

Herkes bir bilgisayarın anlayabileceği bir kod yazabilir, iyi bir programcı insanların anlayabileceği bir kod yazabilir.
Michael Brown

23

Programcılar üzerinde büyük kulaklıklar (iyi, hepsi değil yapmak) ile koda isteyebilirsiniz ancak anlamına gelmez onlar rahatsız edilmek istemediğini, sadece araç, iletişim kuramaz o anda - değil onlar asla iletişim kurmayacak.

Sözlü iletişim becerileri , ekibin geri kalanıyla, geçici toplantılarda, iş kullanıcıları, diğer ekiplerle vb. Toplantılarda hala çok önemlidir.

Yazılı iletişim becerileri, iş arkadaşlarınıza büyük kulaklıklarla e-posta gönderdiğinizde daha sonra cevaplayabilmeleri için çok önemli olacaktır.


1
Buna tamamen katılıyorum. Sadece meşgul olduğumu belirtmek için kulaklıkları taktım.
Ivan

7

Bana teknik danışman olarak iş aramanız gerektiği gibi geliyor. Genellikle programlama içerir, ancak aynı zamanda çok fazla iletişim gerektirir - müşterilerle, meslektaşlarıyla, diğer şirketlerin danışmanlarıyla ... OTOH ayrıca kod yazmadan birçok teknik sorunu çözmek anlamına gelir; Muhtemelen farklı yollar aramak. HTH.


2
Sen bile programcı mısın ??
CenterOrbit

2
Evet benim. Ben de bir süre teknik danışman oldum. Cevabım için seni bu kadar üzen şey nedir?
SL Barth - Monica

Bir müşteriyle buluşmaya giden bir birey olarak teknik danışman?
James P.,

@James P. Demek istediğim bu, evet - ve teknik danışmanlık yaparken de öyle yaptım. Müşterinin ofisine gitmek ve teknik sorunlarını çözmelerine yardımcı olmak. Açıkçası, geliştiricilerin de güçlü iletişim becerilerine ihtiyaçları var, ancak bu zaten burada başkaları tarafından uzun zamandır tartışılıyor.
SL Barth - Monica

6

İletişim becerileri, bir yazılım geliştiricisi için son derece önemlidir. Bir yerlerde, (muhtemelen tüm istatistiklerin% 68'inin yapıldığını söyleyen statünün yanında) bir yazılım projesi çoğunluğunun zayıf iletişim nedeniyle başarısız olduğunu söyleyen bir statüsü vardır. Bir yazılım geliştirme ekibinde işletmeyle iletişim kurabilen (ve işletmeyi anlayabilen) kişi olmak iyi bir yer olmak zorunda.


6

Bildiğim kadarıyla diğer programcılara ve BT türlerine göre en büyük rekabet avantajımın, BT kavramlarında akıcı olmayan insanlarla iletişim kurabilmem olduğunu kesin olarak savunuyorum. BT topluluğunun ortalama bir üyesi tarafından en az küçültülmüş ve az gelişmiş bir beceridir ve yine de en önemlilerinden biridir.

Akla gelebilecek hemen hemen her rolde, bir noktada, yaptığınız şeyi neredeyse hiç anlamayan biriyle konuşmanız gerekecek ve ne yaptığınız konusunda onları satabileceksiniz.

Ayrıca bir şartname için gereksinimler toplamak için kullanıcılarla da uğraşmanız gerekebilir - bu özel bir dinleme (doğru sorular ve sorularla birlikte) iletişim de demektir!

Elbette bir faydası daha var - iyi iletişim becerileri ilk etapta iş bulmayı çok daha kolay hale getiriyor.


4

Tebrikler. Bir uygulama mühendisi ve daha sonra bir uygulama mühendisliği yöneticisi (FAE Yöneticisi) olarak parlak bir geleceğiniz var.

Bu sterlinlik mesleğinin bir parçası olarak, birinci sınıf müşterilere, üzerlerine yazılmış "Yazılım Yığını" metniyle powerpoint sunumlar yapacaksınız ve çok karmaşık yazılım mühendisliği tasarımlarını, sıklıkla rastgele düzenlenmiş farklı renkteki dikdörtgen bloklar halinde soyutlayacaksınız; bu sunumlar, temel yazılım mühendislerinden, Ar-Ge'nin en üst seviyelerinde başlatılacak, en düşük ortak paydalı müşteri zihniyetine sulanacak ve daha sonra, asıl yazılım mühendislerine en üst seviyelerde sunulan gereksinim belgelerine geri yapıştırılacaktır. Ar-Ge ile işletme şartnamesi niteliğinde. Bonuslarınızdan biri "bulut" kelimesinin liberal kullanımına bağlı olacaktır.


Uygulama mühendislerinin tipik olarak aynı seviyedeki tasarımcılardan ortalama% 20 ila% 30 daha fazla yaptıkları belirtilmelidir. Bunun nedeni, daha iyi iletişimciler olarak daha yüksek ücret talep edebilmeleri; Tipik tasarım mühendisi, zayıf bir iletişimci olarak, tipik olarak daha fazlasını talep etmiyor. Böylece standartlar belirlendi ve App Engrs, tasarımcılara göre günlük çalışmalarından daha erken bir süre ayrılırken bankaya kadar gülüyorlar. Ve konferans salonundaki paketlenmiş pizza yerken şanslıyken, masraflı, daha pahalı, ofis dışı öğle yemeklerinden bahsettim mi?
Jonathan Cline IEEE

3

Mükemmel iletişim becerileri ile daha iyi olacaksın. Heads-down programcıları genellikle heyecan verici projelere dahil edilmemişlerdir, çünkü yöneticileri de onları anlayamayabilir. Temel olarak, asla havaya çıkmazsanız, "köşedeki garip adam" olarak güvercin olursunuz.

Yine, kalıplar üzerinde çalışıyoruz ve her ortam böyle değil, ama en azından iyi iletişim becerileri, işinizi ve çevrenizdeki insanları daha iyi anlamanıza yardımcı olur; belirli bir etki alanı.

Ne kadar iletişim kurduğunuz size kalmış. Konuşmak isteyen hiç kimsesi olmayan, baş aşağı programcılarla dolu bir takımda son bulmanız çok nadir olur, ancak inek mizahına akraba değilseniz, çabuk tanıtılmaya hazırlanın. Ayrıca, kaçınılmaz sosyal açıdan garip programcılar için hazırlıklı olun. Her zaman en az bir tane vardır.


3

Muhtemelen, çoğu yazılım projesi teknik sorunlar nedeniyle değil, iletişim sorunları nedeniyle başarısız olmaktadır. Harika bir kod yazmak bir yazılım mühendisi için kesinlikle önemlidir, ancak iyi iletişim becerileri bir takım için çok büyük bir değerdir - ve aynı zamanda kodlama becerilerinden daha geliştirmek daha zordur.


2

Şu anda büyük kulaklıklar açıkken programlama yapıyorum. Ben sadece programlama yapıyordum. Açıkça şimdi şimdi StackExchange ... 'de olduğumu biliyorum:

Dayanışma konusunda birçok programlama yapıldığı doğru. İyi programlamak için, bu odak ve gizlilik İHTİYACINIZ VAR. Ancak, zamanınızın çoğunun programlamaya harcandığını gerçekten düşünüyor musunuz? Takım toplantıları, strateji konuşması, yürümek, düşünmek, tartışmak vb. Arasında zamanınızın çoğu bölünecektir. Aslında masa başında oturmak, tüm hayatınız boyunca olmaz. Yazılım mühendisliği kursumda, bir takımdaki en iyi / en verimli programcıların gidenler değil, içe dönük olanlar olduğu bir çalışmayı okuduğumu hatırlıyorum.

İyi programcılar ekipleriyle iyi iletişim kurabilir. Gereksinimleri teknik bir liderden veya yöneticiden almak ve anlamak genellikle kolay bir iş değildir. Görevlerinizi netleştirmek ve ekiple iletişim kurmak için iyi iletişim becerileri gerekir. Teknik lider veya menajere yükselirseniz, takımı bir arada tutmak için iletişim becerileri çok önemli olacaktır.

Ben de dışarı çıkmayı seven biriyim. İtiraf etmeliyim ki, ilk başta, programlama işimdeki dayanışma miktarını biraz iç karartıcı buldum. İşi daha sosyal hale getirmek için bazı adımlar attım, çoğunlukla: 1) Yalnız öğle yemeği yemeyi reddetmek 2) Arkadaşlarla spor salonu / basketbol molaları almak

Bir programlama işi anti-sosyal olmamalıdır.


2

İletişim becerileri kesinlikle boşa gitmeyecek. Zamanınızın% 80'ini program kodu yazarak geçirseniz bile, kodun ne yaptığı konusunda net olmanız gerekir. Çabalarınızın boşa harcanmamasını sağlamak için müşterinizle (veya proje liderinizle) etkin iletişim kurmak ve gerçekte neyin gerekli olduğuna karar vermek gerekir. Ek olarak, çalışmanızı, tasarımla ilgili olası sorunları, daha basit uygulamaları, vb. Programlamaya daha az aşina olanlara daha kolay bir şekilde anlatabileceksiniz. Son olarak, kullanıcı etkileşimli yazılımı programlarken, iletişim becerileri doğru anlaşılan kullanıcı dostu bir yolla doğru bilgiyi alan bir kullanıcı arayüzü tasarlamada oldukça yararlı olacaktır. Ayrıca, işi yapmak için kullanıcıdan doğru bilgileri almanıza yardımcı olacaktır.


1

Burada bilgisayar iletişiminde iletişimin anahtar olduğunu iddia eden herkesle aynı fikirdeyim. Dürüst olmak gerekirse, açıklandığı gibi, 'yazılım mühendisi' türünden büyük bir lider programcı veya daha fazlasını yapacağınızı düşünüyorum. Bir şirkette genel BT olarak başladım ve programlama becerilerimi kanıtlayabildiğim anda programcıya geçtim, çok sosyal ve takım odaklı olduğum için şimdi iki projede lider programcıyım. Programlama zincirinde ne kadar yüksek olursa, o kadar beyaz tahta ve problem çözmeye başlayacaksınız.

Kişiliğinizin “liderlik” özelliği varsa (bu, ima ettiğiniz şeydir), çok hızlı bir şekilde zirveye çıkacaksınız. Sadece bu şekilde yükselmeni sağlayan bir şirkette olmanı sağlamak.

Sosyal beceriler, problem çözme ve iyi programlama genellikle düşündüğünüzden daha nadirdir. İşverenler bu tür yetenekler için öldürür. Bence doğru yoldasın. Sadece iyi çalışmaya devam et!


1

Yazılım geliştirmede bol miktarda iletişim olduğunu söyleyen herkesle aynı fikirdeyim ve iyi kod yazmanın bile iyi iletişim becerileri gerektirdiğini ekleyeceğim.

Doğru kod yazmak önemlidir; diğer kişilerin anlayabileceği bir kod yazmak tartışmalı bir şekilde çok daha önemlidir. Kodunuz birkaç hata içeriyorsa, ancak neler olduğunu kolayca anlayabileceğim şekilde yazılmışsa, hataları bulmak ve düzeltmek benim için zor olmaz. Eğer kodunuz tamamen doğruysa, ancak anladığımdan emin olamayacağım şekilde yazılmışsa, doğru olduğundan emin olamıyorum ve gelecekte doğru şekilde değiştirebileceğim ihtimaller çok daha düşük .


1

Tabii ki iyi iletişim önemlidir! Odaklanacağım şey mükemmel bir öğretmen olmak. Gerçekten etkili programcılar, 15 dakikalık bir telefon görüşmesinde uzun yıllar boyunca anlaması gereken bir şeyin temelini açıklayabilir. Aynı konuşmada, ayrıntıları teknik olmayan terimlerle açıklamanız gerekir; böylece, hattın diğer ucundaki kişi, uzun süre boyunca işleri için en iyi eğitimli bir karar alabilir.


1

Nereye gittiğine bağlı. Doktora ile beyin fırtınası yaparak beyaz tahta üzerinde bolca zaman harcayacağınız bir ticaret şirketi biliyorum. Aynı şekilde çok fazla iletişimde bulunacağınız prestijli bir danışmanlık firması tanıyorum, ancak teknik altyapısı olmayan insanlarla ... Aynı şekilde çok şey yapacağınız büyük yazılım olmayan Fortune 100 firmasını biliyorum. iletişim kurmak, ama esas olarak siyaset oynuyor olacaktı.

OTOH, pek çok başlangıç ​​ve yazılım ürünü şirketi baş aşağı kodlama için insanlara ihtiyaç duyuyor. Elbette, biraz iletişim kurarsınız, ancak firmanızı satan diğer kodlayıcılarla konuşmaktan çok farklı bir sunum yapmak için ayağa kalkın ...

İletişimin gerçekten devreye girdiği alan, satış mühendisliği / teknik danışmanlık / vb. Alan… Gerçekten mükemmel bir iletişimciyseniz (ve sadece sosyal açıdan garip olmayan bir SW mühendisi değilseniz) Güzel para ödedi. Orada da bazı satışlar var.


0

Ah, dışarıdan gelen insanların bakış açısından ... Gerçekten diyemeyiz (bütün gibi başkaları yapmak) o programlama iletişimi ile ilgili.

Gerçekten değil , normal günlük karşılıklı dayalı iletişimle gün saygı ve ilgi alanları ve kazıklar yaklaşık fazlası var ... Zihin okuma tür, hemşirelik ve bazı savunarak kesinlikle ilgilenmektedir. Çok fazla pazarlık var , ama alıştığınız türden değil.

Programcılara gerçekten sh-t satmıyorsunuz , oyun oynamalı ya da ağır kanıt ve gerçeklerle baştan çıkarmalısınız. Bu kritik göreve yönelik meseleler için adil görünse de , kimseyi, kimseyi rahatsız etmeyenlere uygulayın, onu gündeme getiren kişi bile değil, gerçekten umursamalıydı ve ... iletişim cehenneme hoş geldiniz .

Dış dünyada bir baytınız varsa (satış malzemeleri / kapanış anlaşmaları / tokalaşan dünyalar) , bir yandan (biraz çocukça, biraz akademik) etkileşimli programcıların, kabinler arasında deneyimleyecekleri türlere adapte olmak gerçekten zordur .

İş müfredatınıza parçası boşa gider ağır sen bir yolunu bulacaksınız sürece, yönetim merdiveni tırmanmak ateşe kediden daha hızlı.


0

İletişim becerileri faydalıdır, ancak teknik yeterlilik geliştiricilere göre her şeyi aştı.

Muhtemelen bir uygulama mühendisi, yani müşterilerin 'baş aşağı' geliştiricileri tarafından üretilen yazılım ürününü uyarlamalarına ve kullanmalarına yardımcı olan bir mühendis olarak daha mutlu olursunuz. Bu şekilde yazılımla çalışırsınız, ancak günün çoğunu konuşarak geçirirsiniz.


0

Programlamayı iletişim kurma yorumunuzdan (insanlarla tartışmaktan) ayırdığınız ve zamanın% 80'i insanlarla konuşmak istediğiniz için, programlama iyi bir seçim değildir. Belki tam zamanlı bir analist, mimar, yönetici veya müşteri sorumlusu olabileceğiniz bir duruma girerseniz (Müşteriler ve programcılar ile konuşabiliyorsanız, tercümansınız (Üzgünüm, küçük bir Ofis Alanı mizahı.).

Bütün günü tahtaya harcayabileceğiniz projelerin aşamaları vardır, fakat sonunda kod yazmanız gerekir. Bu bir iletişim şeklidir, ancak tarif ettiğiniz gibi değil. Belki bir çift programlama mağazasında kod yazarken çok sohbet edebilirsiniz. Çoğu zaman, klavyeye odaklanmanız gerekir. Kulaklık takmak, çevrede olmayan çok fazla insanla çevrili olduğunuz anlamına gelir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.