从“Web”过渡到“应用程序”开发

时间:2009-07-10 13:43:47

标签: language-agnostic programming-languages

我意识到这会带来被称为“主观”和“基于讨论”的巨大风险,但你不必与任何人或我争论。我只是喜欢这个问题的诚实答案。首先,问题是:

根据您的经验,可以说我可以找到一份没有CS学位的java或其他“非网络”语言/系统开发人员的工作吗?

一点背景:我是一名LAMP(PP)开发人员,过去两年左右一直在与网络世界合作,大约90%是自学成才。 [编辑]我已经在html / css / javascript工作了大约7年的兼职/自由职业者,并且在过去的2年里一直在做php / perl的全职工资,以便澄清。 [/ edit]我的一位做了很多Java的朋友说服我开始学习它,我开始对我在“非网络”环境中的潜在就业能力感到好奇。到目前为止,我一直在营销公司工作,并为基于网络的系统进行应用程序开发,因此在非相关领域(音乐)获得学士学位并没有阻止我。

非主观答案的可接受格式:
“如果您有几年的工作经历并且可以证明您知道编程,那么我们的公司不需要特定的学位。” - 或 -
“随着经济的发展,确保你通过第一级筛选的唯一方法就是进行广泛的相关教育”

7 个答案:

答案 0 :(得分:3)

是的,你可以(否则我没有工作)。如果你能证明你知道这些东西,很多公司都不会过分关注正规学位。毕竟,他们(应该)雇用人员是因为他们具备一定的技能,而不是因为他们以特定的方式获得了这些技能。在大学学习是一种方式,在实践中编程是另一种方式。

现在,我认为(在这里猜测,根据我的背景),你会在大学里学到一些你通常不会从自学中获取的东西,这在作为程序员工作时可能仍然有用,但我相信你花在用于实际交付给(希望是满意的)客户的软件上的时间越多,正式学位的缺乏就越少。

答案 1 :(得分:2)

这肯定是一个精神错乱,但我没有看到你无法进行过渡的任何理由。一个优秀的程序员是一个优秀的程序员,无论他们使用何种语言。我认识那些写出优秀的java代码并轻松转换为javascript或ruby的人。您可能会失败的地方是计算机科学的基础知识,这是您从正规教育中获得的。像指针,内存管理,线程等等,我倾向于发现“自学成才”的开发人员通常不那么强大,但没有理由你不能学习这些东西,如果你能够向未来的雇主证明你对这些概念有很好的把握,可以证明你知道如何使用它们,那么我认为你不会有太多的麻烦。

答案 2 :(得分:2)

根据我的经验,这在很大程度上取决于你想去哪里工作,在某些情况下,还要取决于你想要走多远的管理阶梯。

如果你有学位,我工作的一些地方并不在乎。事实上,在我工作的一个地方,获得学位几乎是不利的,因为很多管理层都没有学位。

我工作的其他地方都需要“相关”学位。在至少一个我个人参与的案例中,这对他们造成了不利影响,因为我的一个朋友比那里的任何开发人员都要好得多,知识渊博,并且正在寻找新的工作,但他们甚至都不会谈论她,因为她没有学位。

最后,对于一些雇主而言,只是你是否拥有学位,而你的专业并不重要。我认识一个人从事Java开发,他的学位在历史上。此外,我在一家科学机构工作,很多人都拥有相关科学的学位,很少或没有正式的软件开发教育。

答案 3 :(得分:1)

我的经验总是让我评估过去的证据。这意味着有什么可以展示你所取得的成就。如果您正在进入新技术,那么在您实现这一目标之前还需要一段时间,这意味着您可能需要重新启动。你想这样做吗?如果您准备好将所有技能提供给新工作(包括学习新语言),那就更好了。通过这种方式,无论你是否拥有学位,你都会逐渐变得更有价值。

答案 4 :(得分:1)

在您的情况下,您应该将您的音乐学位作为一个优势,并希望在与音乐相关的应用程序开发的公司中获得您的第一个应用程序编程工作。你的音乐学位加上任何形式的编程经验肯定会打开一些门。

但是,您可能需要采取初步削减工资来进行转换。

答案 5 :(得分:1)

根据我自己的经验和我的国家瑞士:我开始在一家大公司接受内部教育,到目前为止,大约23年后还没有CS学位。在互联网泡沫破裂后的两年里,我很难找到工作,我能够突破自雇人士和政府的一些失业金。

这里的大多数大公司都不关心学位,除非你想要追求承运人。但是你需要一个MBA,而不是CS。

但有一个例外,那就是咨询公司。他们按照他们在团队中的医生数量按比例出售他们的服务,所以没有机会 - 除非你有联系。

这里的小公司知道他们必须为某人投资才能了解他们使用的工具和语言 - 所以如果他们有需要,即使他们在确切的领域缺乏经验,他们也会雇佣你。

使用您更喜欢使用的工具来完成某些工作可能没什么坏处,但是

  • 好雇主知道学习另一种语言不是困难的部分
  • 工作经验超过私人经验

去吧。不要放弃你的dayjob并开始环顾四周。经过几年的努力,肯定会超过就业市场的教育。

如果你有机会参观一些课程,你只能受益。亲自。

答案 6 :(得分:1)

我大部分都是自学成才,在我的职业生涯中,我已经从VB转换到C ++ / MFC,再到“经典”的ASP转换为Java,这甚至没有涉及我所拥有的所有辅助技术的表面。学会完成我的工作。我认为所有开发人员都应该期待获得新技能。它只是随之而来的。

我认为你在“网络”和“应用程序”开发之间做了一个奇怪的区别。实际上我的所有Java工作都涉及构建网站,对于C#/ .NET开发人员来说也是如此。作为一个LAMP人,你已经拥有一些关键的可雇佣技能 - 你知道Linux,你了解(或应该理解)TCP / IP堆栈,HTTP如何工作等等。你知道如何组建一个有吸引力的界面,这是一种比你想象的更为罕见的技能。在转换到Java / .NET / Whatever时,您可以利用所有这些技能。

至于音乐学位,不要出汗。我曾与之合作的一些最优秀的程序员都是音乐家。我没有CS学位,也没有减慢我的速度。认证可能会帮助您进入一些公司,但在此之前尝试一个或两个Java项目,看看它需要你。