it-swarm.asia

Bilgisayar bilimi derecesi profesyonel bir programcı için neden önemlidir?

Bilgisayar bilimi mezunuyum. Kapı açmak, iş bulmak harikaydı. Bildiğim kadarıyla C # .NET programlamasında (dünyanın en popüler işletim sistemi dünyanın her yerindeki en popüler işletim sistemi olmasa bile, çalıştığım bölgedeki en popüler platform ve dil) profesyonel alanında bana pek yardımcı olmuyor. Neden profesyonel kariyerinizde bir programcı olarak size yardımcı olduğunu düşünüyorsunuz (bazı mülakatçıları etkilemek için prim algoritmasına çıkmak dışında)

Günümüzün dünya adaptasyonunda, hızlı bir zihin, güçlü iletişim, OO ve temel tasarım becerileri, geliştiricinin müşterinin kabul edeceği yazılımı yazmasını sağlar.Bu beceriler sadece cs programında gözden kaybolur. Wrox'un 500 sayfalık C # kitabını okumak, 4 yıllık comp sci math blaster derslerinden çok daha kullanışlı bir beceri seti sunuyor.

63
P.Brian.Mackey

Neden bilgisayar bilimi derecesi ?:

  • Bir HashTable'da binlerce öğe saklayan bir geliştirici ile çalıştım ve sonra sadece değerler üzerinden yineledim. Asla bir karma yoluyla erişemedi. Bir HashTable'ın nasıl çalıştığını veya neden birini kullanacağınızı bilmiyordu - bir CS derecesi bu konuda yardımcı olabilir.
  • Düzenli ifadelerle çalışırken, temel otomata teorisine ve resmi dillere maruz kalan kişilerin neler olup bittiğini sorgulamaları ve ifadelerinde sorun gidermeleri daha kolay gözükür - CS derecesi bu konuda yardımcı olabilir.
  • Okuldan yeni bir geliştirici, çeşitli paradigma zihniyetlerindeki (OO, fonksiyonel, mantıksal) sorunları derhal çözebilirken, yeni bir derece geliştiricisi aynı şeyi yapmadan önce deneyime ihtiyaç duyabilir.
  • Okullar hesaplama karmaşıklığını öğretir. Derecesi olmayan geliştiriciler en iyi olanı hissedebilirler ama biçimsel bir anlayış bazen Güzeldir, özellikle sonuçları bir meslektaşınıza açıklarken.
  • Bir derece, makinenin birçok modeline bir giriş sunar - donanım, işletim sistemi, ortak veri yapıları, ağ oluşturma, VM'ler. Bu modeller zihninizin arkasındayken, bir şeyler ters gittiğinde bir sorunun yaşadığı bir önsezi geliştirmek daha kolaydır. Yine, diplomasız geliştiriciler aynı modelleri oluşturur, ancak zaman alır.
  • Herhangi bir disiplinde uzman rehberliği, öğrencinin çıkmaz ve kaçırılan konulardan kaçınmasına yardımcı olabilir. Okumak harika ama harika bir öğretmenin yerini tutmaz.

Bu, büyük bir geliştirici olmak için bir CS derecesinin gerekli olduğu anlamına gelmez. Zorlukla. Birlikte çalıştığım en iyi geliştiricilerin hiçbir derecesi yok. Bir derece size bir koşu başlangıç ​​verir. Mezun olduğunuz zaman, birçok dilde problemi çözmek için (umarım) çeşitli dillerde ve ortamlarda makul miktarda kod yazdınız. Bu, uzman olmak için 10.000 saat gerekir yolunda size iyi bir yol açar.

İkinci bir faydası ise, işverenlere uzun vadeli bir hedefte bulunabileceğinizi ve başarılı olabileceğinizi göstermesidir. Birçok şirkette, bunun öğrendiklerinizden daha önemli olduğuna inanıyorum.

133
Corbin March

40 yıl içinde, .NET ve C # 'ın eski işletim sistemlerinde eski bir kod yığınından başka bir şey olmasını beklemiyorum.

Ancak temel bilgisayar bilimi kavramları, Shannon, von Neumann, Knuth, Dijkstra, Hoare ve diğerleri onları 40 yıldan uzun bir süre önce resmi mantık ve matematik gerekçesiyle kazdıklarında olduğu kadar canlı olacaklar.

87
Paul Nathan

Okulda okuduğum CS'lerin neredeyse tamamını (*) her gün işimde kullanıyorum. Dil tasarımı, arama motoru optimizasyonu, miktar analizi veya benzer bir alanda programlama yapmak istiyorsanız, sizi varsayalım olabilir ilgili bir derece olmadan yapın, ancak çok şey gibi görünüyor iş yerinde öğrenmek zorunda. Çalışma alanım göz önüne alındığında özellikle yüksek eğitimli değilim; meslektaşlarımın çoğunun bilgisayar bilimi doktoraları var ve birçoğu CS profesörü.

Derecemi almak benim için çok değerliydi; kendisi için hem dolar hem de memnuniyetle defalarca ödedi.

Dedi ki, ne demek istediğini iyice anlıyorum. Bilgisayarları programlayan çoğu insanın CS derecesi gerektirmeyen işleri vardır; örneğin, pratik programlamanın yanı sıra mevcut endüstri trendlerine ayak uydurmak için sağlam bir topluluk-kolej düzeyinde arka plana ihtiyaç duyarlar. Ve bu iyi. Başarılı bir akvaryum mağazası işletmek için deniz biyolojisi alanında bir dereceye ihtiyacınız yok ve bence akvaryum mağazaları harika. Ama eğer hepsi nasıl yapıldığını biliyorsan Japon balığı yetiştirmekse Woods Hole'da iş bulmak çok zor.


(*) Waterloo'dan Uygulamalı Matematik ve Bilgisayar Bilimi alanında bir B.Math var.

37
Eric Lippert

Önemli çünkü teknoloji statik kalmıyor. Bilgisayar bilimi, tüm dijital teknolojilerin temelini oluşturur. Kendi kendini yetiştiren programcıların çoğu tam olarak bir teknoloji döngüsüne sahiptir, çünkü büyük bir paradigma değişiminden kurtulmak için temelleri yoktur. Elbette, kuralın istisnaları vardır, ancak bilgisayar bilimindeki güçlü bir temel, büyük bir paradigma değişiminden kurtulma olasılığını büyük ölçüde artırır.

22
bit-twiddler

Ne yapmak istediğinize bağlı. Hedefiniz büyük ölçüde iş yazılımını programlamak ise, iş probleminin ve pratik karmaşıklık yönetimi sorunlarının zor olduğu yerlerde, o zaman evet, bir CS derecesi çok yardımcı olmaz. Bununla birlikte, amacınız ana zorluğun teknik açıdan olduğu şeyleri programlamaksa, bir CS derecesi daha yararlıdır. (CS derecem olmasa da, bunu söylemek için büyük bir ikiyüzlü gibi hissediyorum, bu yüzden "veya CS derslerinde kendi kendine öğretme" eklemekten çekinmeyin.)

Eminim, karmaşıklığı yönetme, büyük programlama ve ortak iş problemlerini çözme konusunda harika olan birçok programcı vardır, ancak bir bellek ayırıcısı veya paralellik kütüphanesi veya koleksiyon kütüphanesi, ya da işletim sistemi ya da derleyici vs. Eminim bunun tam tersi de var. Her ikisinin de yeri var ve saygıyı hak ediyorlar, ancak CS derecesi teknik açıdan çok daha fazla yardımcı oluyor.

14
dsimcha

Bir CS derecesinin, bir kişinin iyi bir yazılım geliştiricisi olduğuna dair mutlak bir gösterge olduğunu düşünmüyorum. Aslında, kariyerime matematik derecesine sahip bir programcı olarak başladım, ancak güçlü bir CS önyargısı ile (matematik ve CS, çalışma programımla entegre edildi). Genel olarak bunun iki nedeni olduğunu düşünüyorum.

1 - Mühendisler İşe Alım için Ön Uç olmadığı için

İnsan Kaynakları. Birçok insanın gözlerini yuvarladığını hayal ederken, "şükürler olsun!" Diyorum. Daha da önemlisi - mühendislerin bir şeyler yapmalarına (ya da bir şeyleri kırmalarına) izin vermeniz ya da 1000'lerin özgeçmişlerine göre sıralamalarını ve 1000'lerin röportajlarını yapmalarını mı sağlıyorsunuz?

Bu yüzden, mühendisler tarafından taranabilecek anahtar bir gruba ulaşıncaya kadar İK çalışanları ve İK çalışanları adayları tararlar. İK insanları zaman içinde CS derecesine sahip olmanın, adayın yazılım geliştirme hakkında bir şeyler bildiklerinin oldukça güçlü bir göstergesi olduğunu öğrendiler. Umarım 20 yıl boyunca yazılım yazmanın, adayın yazılım yazabileceğinin iyi bir göstergesi olduğunu da bilirler.

2 - Çünkü CS hakkında öğrenme konusunda bir çeşit sisteme sahip olmak hiç olmamasından iyidir

CS bilmesi gereken çok büyük bir alandır. Ve her zaman değişiyor. Bugünlerde, lisans programımdaki derslerin% 75'inin kariyerimle alakasız hale geldiğini rahatlıkla söyleyebilirim. Ve 5 yıl öncesine ait yüksek lisans derslerimin hızla amortismana uğraması. Ancak başladığımda, bana bilgisayar organizasyonu, ağlar, iyi yazılım mühendisliği süreci, nesneye yönelik tasarım, derleyiciler ve şu anda pazarlanabilir olan büyük bir programlama dilinin sözdizimi/semantiği hakkında bir şeyler öğretmek için büyük bir kuruma ödeme yaptığım için mutlu oldum.

Ve kitap/web sitesi/tur projesi çok açık değildi zaman bana bir şeyler bana açıklamak için ödenen bir ortamda olduğunu sevindim.

Bilgisayar sağlığının ve SDE'nin benim sorunum olmadığı bir laboratuvara erişebildiğim için memnun oldum - Çözmek için gereken tüm araçları düzeltmek yerine daha fazla veya daha az kilitlenip sorunun küçük bir kısmına odaklanabildim. sorun.

Ve kurslar açıkça iyi bir iletişim öğretmese de, gerçekten öğrenebilmenin tek yolunun ekipler halinde çalışarak olduğunu düşünüyorum - ki IS CS derece sunan birçok önde gelen kurumun önemli bir parçası.

Ve bana öğretilenleri gerçekten anlayıp anlamadığımı bildiren, sık sık geri bildirim (notlar ve sınavlar) içeren bir program.

Bu şeyler zihnimde konuyla ilgili herhangi bir kitaptan daha değerli olmak için bir araya geliyor, ama kesinlikle hepsi değil, hepsi bitiyor. Yüksek öğrenim kurumlarının geliştiğini görmekten kesinlikle vazgeçmeyeceğim şeyler var ve bence mezun olduktan yaklaşık 10 yıl sonra, ilk aldığınız derecenin o zamandan beri yaptığınız işten daha az önemli olduğunu düşünüyorum.

12
bethlakshmi

Benim için nedeni, bazı kaba kurslardan geçtiğini ve pes etmediklerini biliyorum. Derleyiciler, Veri Yapısı, Ayrık Matematik (ve diğerleri) gibi bazı dersler CS programlarından çok sayıda insanı yıkama eğilimindeydi. CS derecesine sahip olmak, eğlenmek için dışarı çıkmak yerine çok çalıştığınız ve bir ücret (uzun geceler programların işe yaradığı) ödediğiniz anlamına gelir.

12
Chris L

Bana göre bu zihniyet meselesidir.

Zihniyetiniz belirli bir soruna nasıl yaklaşacağınızı tanımlar ve kavramlarda eğitim görmemiş olanlardan daha geniş fırsatları değerlendirmenize olanak tanır.

Tipik bir örnek, "Gezgin Satıcı" problemi olduğunu bildiğiniz yerde 1) genel sürüm için NP-tamamlanmış olduğundan, 2'den başka tüm olasılıkları denemeniz gerekir. sorun, belirli bir sınır içinde yaklaşık olarak tahmin edebilir veya AC'nin her zaman AB + BC'den daha uzun olduğunu bildiğinizi (mesafeler için geçerlidir, ancak fiyatlar için değil) daha kısa sürede çözmenizi sağlar.

Başka bir örnek, sayısal yanlışlığı en aza indirmek için hesaplamalarınıza matematiksel olarak düz yoldan farklı bir şekilde yaklaşmanız gerektiğini bilmeniz gereken Sayısal Analiz'dir. Bu teorik bilgi gerektirir ve açık bir şekilde ısırılmadıkça yoldan alınması muhtemel değildir.

10
user1249

Gerçekten mi? Vay.

Yani bana C # ve OOP becerilerinin yeterli olduğunu söylüyorsunuz ve rastgele sıralama için kendi algoritmanızı tasarlayabilir ve NP = gerçek hayatta tam problemler?

C # ve OOP iyi, ama önemsiz mantık tasarımı olan bir şey yapmaya çalışıyorsanız, o zaman bilgisayar bilimi temelleri yerinde gerekir.

Dostum, veri yapılarınız veya algoritma becerileriniz işarete kadar değilse hangi C # kapsayıcısını kullanacağınızı bile bilemezsiniz.

Şimdi büyüyelim.

9
Fanatic23

Sanırım derece ile çok fazla ilgilenmediniz, sadece ihtiyacınız olanı aldınız ve dışarı çıktınız veya CS binbaşılarına "programcılar" olarak değil "kodlayıcılar" olarak bakan bir okula gittiniz. Ayrıca, en iyi/en sevdiğim "CS" derslerimden bazıları - en azından Üniversitem'de - Elektrik Mühendisliği bölümü altında olanlar. Çeşitli mimarilere ve stillere maruz kalmam çok önemli oldu ve derecem "kontrollü" bir ortamda bunu kolaylaştırdı.

Sadece algoritmalar ve sevimli tüyler değil:

  • Derleyiciler
  • İşletim sistemleri
  • VHDL/Gömülü Sistemler
  • Montaj ve Mikrodenetleyiciler
  • Yazılım Mühendisliği

Ve son olarak, sadece algoritmalar ve veri yapıları olan Yapay Zeka olan boktan bir şeyi yenen bir sınıf. Üniversite sisteminden geçen şeyler öğrenme sürecinde büyük ölçüde hızlanacak ve daha sonra iş arama yaparken öğrenilenlerin çok değerli olduğunu düşüneceğim.

6
Jeff Langemeier

benim ve meslektaşlarımın çoğu için (hiçbirimizin CS derecesi yoktu)

4
Shawn

Benim düşüncem, "Bilgisayar-Bilimi" pozisyonlarına başvurmadığınız sürece, bilgisayar becerilerine odaklanmayı gerektiren herhangi bir derecenin hemen hemen eşdeğer olduğu yönündedir.

Aslında tanıdığım birçok programcı tamamen farklı bir disiplinden mezun oldu. Tanıdığım en iyi programcıların İnşaat Mühendisliği, Dilbilim, Ekonomi ve Finans dereceleri var.

Sonunda, bir kez deneyim kazandıktan sonra, dereceniz bir işveren için bir başarısızlık testi haline gelir. Yani, etkileyici bir okuldan veya mezuniyet sonrası bir dereceden almadıysanız, anadalınızın ne olduğu önemli değildir.

4
JohnFx

Tamam o zaman ne olacak

Aşağıdaki konulardan geçtiyseniz:

bilgisayar Mimarisi ve Organizasyonu

yazılım Mühendisliği

c.DBMS

temel Elektronik

e. Temel Dijital Elektronik Devre

f.Microprocessor

g.Pompiler Tasarımı

Yukarıdaki tüm sadece formalite için düşünüyor musunuz .. Yukarıdaki noktaları hatırlayın "iyi programcı" bir "büyük programcı" yapar.

Elektrik ve elektronik konuların önemini okumak için bunu yapın

3
Radheshyam Nayak

Bilgisayar bilimi mezunuyum. Kapı açmak, iş bulmak harikaydı. Bildiğim kadarıyla bana yardımcı C # .NET programlama alanında (alanında en popüler platform ve dil ben çalışıyorum değilse tüm birleşik devletler eller aşağı en dünyada popüler işletim sistemi) pek kullanışlı değil.

C'ye% 70 + kod yazılır (yüksek düzey uygulamalardan daha fazla gömülü cihaz olduğundan). Zar veya TIOBE dizini gibi popüler iş aramalarına göre, Java, kuruluş için en popüler programlama dilidir (çünkü Windows sunucularından daha fazla Unix/Linux arka uç sunucusu olduğundan.) C # veya .NET dışında herhangi bir programda Windows'dan daha fazla Linux veya Mac OS varyantı çalıştıran daha fazla akıllı telefon ve tablet (geleceğin bilgi işlem platformu).

Evdeki yönlendiricinize bakın, cep telefonunuza bakın, arabanızın içindeki bilgisayara bakın, evdeki garip mikrodalgaya, ev klima sisteminizin içindeki denetleyicilere, telefonunuzun içine ve iş faksınıza ve yazıcınıza bakın. tarayıcı. Bilgisayarlı cihazların sayısına bakın (pencere sistemlerinden daha fazla).

Sence C # programlanmış mı?

.NET veya C # 'ın dünyanın en popüler platformları olduğuna gerçekten inanıyorsanız, CS okulunuza geri dönüp geri ödeme isteyebilirsiniz.

Neden profesyonel kariyerinizde bir programcı olarak size yardımcı olduğunu düşünüyorsunuz (bazı mülakatçıları etkilemek için prim algoritmasına çıkmak dışında)?

Belki de programlama konusunda temel geliştirme dinamik web sayfaları ve kurumsal uygulamalar yapmaktan çok daha fazlası olduğu için? Bunun için BS derecesine bile ihtiyacınız yok, AA yeterlidir - Biliyorum çünkü programlama kariyerime AA derecesi ile başladım ve yavaş ama emin adımlarla CS'ye çalıştım ve sonra grad okulu tam çalışırken- bir geliştirici olarak zaman.

Yerleşik geliştirme var, aygıt sürücüsü geliştirme var, işletim sistemleri geliştirme var, algoritma geliştirme, sinyaller, iletişim, ağ protokolleri, veritabanı motoru geliştirme, dosya sistemi geliştirme, dağıtılmış hesaplama, derleyiciler var. Araştırma değil, kar amaçlı kuruluşlarda fiili çalışma. Doğal olarak yetenekli olanı yasaklayan kişi, genellikle CS derecesi olmadan (bazen BS derecesi ile bile olmasa bile) bu endüstriyel alanların hiçbirine hacklenemez.

CS derecesi alan ve buna dikkat eden bir kişi bunu bilir. Neden gelmiyorsun?

Günümüzün dünya adaptasyonunda, hızlı bir zihin, güçlü iletişim, OO ve temel tasarım becerileri, geliştiricinin müşterinin kabul edeceği yazılımı yazmasını sağlar.

OO, CS yüzünden ortaya çıktı. Ve düşündüklerini düşünen çoğu insan OO iyi bir iş bile yapamaz. Dışarıya bakın ve yazılımın berbat durumuna bakın (özellikle Java ve .NET, PHP'den bahsetmiyorum.) Sağlam bir CS arka planı (veya bir çeşit mühendislik lisansüstü derecesi) OO ve analitik becerilerin% 100 iyi anlaşılmasını garanti etmez, ancak genellikle yardımcı olur Temel bir CS geçmişine sahip olmayan OTH, OO ve analitik beceriler söz konusu olduğunda tipik olarak kırmızı bayraktır. Sektörde bu iddiayı destekleyecek yeterli ampirik kanıtımız var.

Bu beceriler sadece cs programında gözden düşmektedir.

CS programına ve öğrenciye bağlı olarak. En azından benim için tasarım konusunda birçok iyi kurs gördüm, OO analiz, ticari araçlar ve uygulamalar, yerel şirketlerle ve stajlarla ortak kurslar düzenledik, şirket tarafından finanse edilen projeler ve araştırmalar, Maalesef bu ifadeyi anlayamıyorum veya anlayamıyorum.

Zihnimde, Wrox tarafından 500 sayfalık bir C # kitabı okumak, 4 yıllık comp sci math blaster derslerinden çok daha kullanışlı bir beceri seti sunuyor.

Yine, yaptığınız işe bağlı olarak. Şirkette bile, CS'imi işleri düzeltmek veya iyileştirmek için kullandım. Tüm bunlar modelleme, mimari, dağıtılmış bilgi işlem, güvenlik ve yüksek performans, yüksek kullanılabilirlik ve hata toleransı içerir. Bütün bu şeyleri CS'de öğrendim.

bağlama özgü, teknolojiye özgü beceri seti elde etmek için Wrox kitabı kullanmanın yanlış bir yanı yoktur. Ben kendim yaparım. Ama CS geçmişim bana üzerinde çalışmam için bağlam sağlıyor. CS geçmişim olmadan, yapabileceğim tek şey programlamak, kodlamak (kariyerimin başında sadece AA derecem olduğunda yapabileceğim tek şey).

Birçokları aynı fikirde değil.

Şaşırtıcı değil.

Peki, bir bilgisayar bilimi derecesi neden önemlidir?

Sizce google, hadoop, cassandra veya yüksek performanslı veritabanı motorlarını kim buluyor? Sizce Windows işletim sistemi çekirdeğini kim yazıyor? Sizce kim C # geliştirme yapmak için kullandığınız sevgili araçları program.

Emin olduğum bir şey, C # geliştirme yapmak için kullandığınız araçların arkasında bir CS adam var.

CS derecesine ihtiyacınız olup olmadığı, yaptığınız işin türüne, yapmak istediğiniz işin türüne, yapabileceğiniz işin türüne bağlıdır.

Kurumsal ve web geliştirmede CS derecesi gerektirmeyen çok fazla çalışma var. Bunu kabul ediyorum. Programlama dünyasının sadece bu iki alandan çok daha geniş olduğunu biliyorum, birçok alan (aslında çoğu) CS derecesi veya daha fazlasını gerektiriyor.

CS dereceniz var, nasıl bilmediğiniz bir gizem.

3
luis.espinal

Zihniyetle ilgili Thorbjørn Ravn Andersen noktasına katılıyorum. İyi bir CS müfredatı ile geliştirdiğiniz ana şey budur.

Temel olarak veri yapıları ve algoritmalar gibi şeyleri anlamaya gelir. Bunu kendi başınıza öğrenemeyeceğinizden değil, iyi bir CS müfredatı daha iyi pozlama sağlayacaktır.

1
George Marian

Yazma

Kurumsal yazılım geliştirmede, kod yazabilmek ve write. Demek istediğim: e-posta yazmak, hata raporları, teknik dokümanlar, vb. Hem yazma hem de kodlama, düşüncenin netliğini ve uygun ifade ekonomisini gerektirir.

İki yazılım geliştiricisi arasında, eminim sağlam bir üniversiteden CS derecesi olan (güçlü CS programı ve beşeri bilimlerde gerekli seçmeli dersler) her iki yeteneğe de sahiptir. (Doğru, bu bir garanti değildir: beşeri bilimlerden insanlar büyük kodlayıcılar ve üst raf yazarları olabilir; Birçok CS derecesi, yazamayan kodlama makineleri vb.

okuma

Bir akıl hocam, geliştiricileri okuduklarına göre yargılayabileceğini iddia etti. Orijinal yazı WROX kitaplarından bahsediyor. Bence, CS derecesi olan birinin bu tür profesyonel BT kitaplarını arama ve bunları etkili bir şekilde kullanma olasılığı daha yüksektir. Biri CLR işleyebilirse, o zaman "Profesyonel C #" işleyebilir.

Math

Matematik mantık, ispat, titizlik, vb. Geliştirir ve yan etkisi yazıya yardımcı olmasıdır. Çoğu iş BT yoğun matematik becerileri gerektirmemesine rağmen, CS derecesi olan kişi gerektiğinde buna sahip olacaktır. Bu, yaşamı onsuz yaşamak ve okulda neyi kaçırdığınızı merak etmekten çok daha iyi bir yoldur.

1
Michael Easter

Sanırım gerçekten geçtiğiniz CS programının kalitesine bağlı. Ne demek istediğini biliyorum, günlük olarak yazdığım kodun çoğu sadece standart VB.Net, SQL Server'dan veri almak, forma koymak, veritabanına geri kaydetmek, bazı raporlar yapmak. Yıkayın, durulayın, tekrarlayın. (Zaman zaman çok sıkıcı) Geçtiğim CS programı, teori ve temel bilgileri kapsamak dışında, birçok pratik şey öğretti. Yazılım tasarımı, veritabanı tasarımı ve proje yönetimi gibi alanları ele aldık. Programlama dillerini öğrenmek kolaydı, yazılım sistemleri oluşturma tasarımı ve metodolojisi kolej deneyimimden uzaklaştırdım. Bize gerçek dünya sorununa dayalı projeler verildi, hatta bazen kampüsteki diğer bölümler için yazılım sistemleri tasarladık.

Programcılar olarak kendi başımıza öğrenme yeteneğine sahibiz, bu bizim alanımızda bir zorunluluktur. CS programından geçtiğim için çok mutlu olduğumu söylemeliyim. Profesörlerim şaşırtıcıydı ve bana biraz öğretti. Sınıf arkadaşlarım çok eğlenceli insanlardı ve bilgisayar laboratuvarında çok eğlenceli geceler geçirdik. Doğruyu söylemek gerekirse, o günleri özlüyorum ...

1
Kratz

Her şey vahşice yaşama yeteneğinde.

Dereceyi atlarsanız, muhtemelen dersleri çok kişisel bir şekilde (zor yoldan) öğrenmeniz gerekecektir. Derecenin olmaması, deneme yanılma yoluyla daha zor öğreneceğiniz anlamına gelmez; ancak, derece, başkalarının gece geç saatlerde, sinirli programlama oturumlarında ve genellikle "zor yoldan" yapmakla kazandığı daha önce edinilmiş olan bir hazine sandığına maruz kalmanızı garanti eder.

Gerçekten mükemmel olan kişi, başkalarının gerçek olarak bulduklarını atmayacak, bunun yerine bilginin sınırlarını bilene kadar meydan okuyacak ve daha sonra yeni kazanılan fikirlerin kendi sistemi haline gelene kadar "sistem" ile oynayacaktır. Daha önce gelenlerin omuzlarında duruyor ve onları yeniden keşfetmek zorunda kalmadan geçen yılların çözümlerini yaşıyor.

Tabii ki, bilgisayar bilimleri derecesi olan bir kişi her zaman daha iyi bir aday değildir. Akıntıya yönlendirilen, ancak (garip bir nedenden dolayı) ondan içmeyi reddeden benzersiz bireyler var.

1
Edwin Buck

CS derslerimde zaman zaman oldukça faydalı olan bazı temel bilgiler var. Şelale süreci ve adımları, kariyerimde tekrar tekrar kullandığım bir şeydi, Agile için bazı farklılıklar var, burada basamaklar kadar katı değil ama aynı adımlar var.

Problem çözme becerileri ve çeşitli algoritmik buluşsal yöntemler zaman zaman da yardımcı olabilir. CS derecesinin dolaylı faydaları için söylenecek bir şey var. Örneğin, bir şeyin neden doğru olduğunu göstermek için bir cevabı nasıl haklı çıkaracağımı öğrenmek, üniversitede rafine ettiğim birkaç beceriden sadece biridir, ancak bunun programın sonunda bir yararının ne kadar açık olacağından emin değilim.

1
JB King

Bu önemlidir, çünkü işe alım yapanlar ne yapmanız gerektiği konusunda tamamen bilgisiz olduğunuza dair bir göstergeye sahiptir, ancak ne yaptığınızı ya da bunu teknik olarak uygun bir şekilde yaptığınızı gerçekten ima ettiğiniz anlamına gelmez.

Yaptıklarını seven ve gerçekten iyi programcılar olan dereceleri olan parlak insanlar var ve ayrıca gerçekten kötü programcılar olan ve bazı temelleri bile bilmeyen dereceleri olan aptallar var. Her şeyi geliştirebilecek derece olmayan parlak insanlar var (iş yazılımı/derleyiciler/bir işletim sistemi) ve bir hashtable'ı nasıl doğru kullanacağını bilmeyen derecesiz salaklar var.

0
Falcon

Muhtemelen bu pek yardımcı olmuyor, ancak şimdi Assembly'yi ve ilgili tüm bilgileri öğrendiğime göre daha eksiksiz bir programcı hissediyorum ve eminim üniversiteye gideceğim zaman bu tekrar olacak. Yani, çoğunlukla C veya VB kullanıyorum, programlarımı yapmak için bekleme durumunun ne olduğunu bilmeme gerek yok, ama sadece kodumun arkasında neler olduğunu bilmek harika! Ve bilgi daha iyi, daha hızlı ve daha sürdürülebilir kod yazmanıza yardımcı olur. Bir bilgisayar bilimi derecesi tam olarak bence great kodunu yazmak için gerekli bilgiyi verir.

0
BlackBear

yazılım mühendisliği bugün matematik uygulanmayan deneysel bir bilimdir.

Bilgisayar bilimleri dereceleri algoritmaları vurgular, günlük işinizin ne kadarı yeni algoritmalar ve veri yapıları uygulamayı veya hatta kullanmayı içerir?

Çerçeve katmanları ve sızdıran soyutlamalarla uğraşmak ne kadar içerir? Belgelerin ne anlama geldiğinden ziyade bazı API'ların gerçekte ne yaptığını belirlemeye ne kadar çalışıyor? Test ne kadar ve nasıl test edileceğine karar vermek?

Tüm bunlar için bir fizik veya kimya derecesi ezberlenmiş Knuth'dan çok daha iyi bir eğitimdir

0
Martin Beckett

CS lisans eğitimini yeni bitirmiş olan 21 yaşındayım. Programlamada ne kadar harika olursanız olun, bir CS grad iseniz, zaten çeşitli alanlara maruz kalacaksınız. Yani yeni şeyler öğrenmek istiyorsanız, keşfetmekten korkma Öyle olsa bile ilgisiz. Bir teknoloji veya programlama dilinde uzmansanız, iyi. Ama maceracı olacağınızı ve diğer teknolojilere bakmaya istekli olduğunuzu düşünmüyorum. Thats nasıl kendinizi kirli (ve hızlı da). Keşfedeceğiniz şeyin para kazanmanıza yardımcı olmayacağı için ilgisiz olacağını düşünmeyeceksiniz. (CS UG'nizde zaten bir çok alakasız şey incelediniz;)).
CS'de mezun olduktan sonra sahip olduğunuz tutku, sizi Yazılım Uzmanı yapar.
Kabul eden var mı?

0
Ranjanmano

Kesinlikle doğru, bilgisayar bilimi derecesi çok önemli değil; bu yüzden tek seçiminiz bunun yerine mühendislik derecesi almak olmalıdır.

Çeşitli geçmişlere sahip adaylarla mülakat yaparken, derecesi olmayan adaylar için öne çıkan özellik şudur: teknik iletişim becerileri eksikliği ve disiplin eksikliği. Bunlar herhangi bir bilim derecesi alırken öğrenilen temel özelliklerdir (mühendislik derecesi ile daha da fazla söyleyebilirim).

Çoğu şey eşit olduğunda (ve tek bir röportaj turu genellikle "eşit" adaylarla ortaya çıkar), önce mühendislik derecesi, bilgisayar bilimi derecesi ve üçüncü derecesi olmayan kişiyi işe alırım. Bununla birlikte, karşılaştırmada çok eşit olmayan şeyler yapmanın yolları vardır, böylece herkes soyağacı olanları bile yenebilir - ama bu ayrı bir soru değil mi?

0

Açık kaynak kodlu bir dil kullanarak iş bulmak squat demek değildir. Çoğu şirket, PHP) insanların CS eğitimi almadan yetenekli olabileceği hobici bir üne sahiptir. Çoğu hobinin olduğu gibi .Net dillerini kullanmak, sadece hafta sonları dolaşmak için bir lisans için binlerce Shell'i istemeyecektir, bu nedenle C # 'da ilk iş arayan biri muhtemelen sadece 2-3 yıllık deneyime sahip olacaktır.

Tabii ki ticari deneyim gerçekten değerli olanıdır, çünkü son teslim tarihlerine kaliteli kod sunma yeteneğinizi gösterir.

Sonuç olarak, açık kaynaklı olmayan dillerle çalışmak için röportajlar yapmanızı sağlar.

0
Adam Pointer

Collegue veya University'den bir derece, kendiniz başka şeyler öğrenmek zorunda olsanız bile, gerçek bir dünya işi için gerekli olan bazı temel şeyleri öğrendiğiniz ve C.S. hakkında bilgi sahibi olduğunuz anlamına gelir.

Ayrıca, bir I.T. işveren bir Soft bulmak zorundadır. Dev. Ve 500 başvuran özgeçmişlerini gönderir ve özgeçmişinizde bir dereceye sahip olan en az 50 tanesiyle röportaj yapmak zorunda kalır, hem işe alım yapan kişiye hem de işe alma şansınıza yardımcı olur.

(H.H.R.R.'yi inceleyen bir Yazılım Geliştiricisinden)

0
umlcat

CS'ye girdiğimde, vay canına, gerçekten de olduğum gibi düşündüm ve burada hiçbir şey öğrenmeyeceğim ... 5 yıl sonra sadece ekip olarak çalışmayı öğrendim ve bazı şeyler beni sadece kod yazabilen birinden ve kodlamadan önce ne yaptığını düşünebilen birinden ayıran mühendislikten, kısaca, metin düzenleyicime veya ide'ye tek bir harf bile yazmadan önce düşünmeyi öğretti.

0
Coyote21