现在程序员应该具备哪些技能?

Tee*_*eej 10 windows

我一直在使用PHP,Javascript进行编程,并且在一家公司工作了几年.我想离开我想知道我现在需要什么技能才能获得成功.

Ian*_*ley 7

你似乎好奇并且对学习感兴趣.这是资格#1; 事情在这个领域变化很快,只有终身学习者才能生存.

下一步将是搜索您所在地区的工作板(Monster,Craigslist,Joel On Software Jobs Board等)并跟踪您看到的技能.这可能是一个很好的代表什么是"热",至少在你附近.

然后,您可以通过标签(例如PHPjavascript)查看堆栈溢出,并查看人们提出的问题类型是否对您有基本意义(不是您需要知道每个答案,但如果它听起来像希腊语,你可能还没有准备好在这个主题上找到工作).

为了更直接地回答你的问题:有PHP和javascript的网络工作,虽然如果你朝那个方向大量使用CSS和Ajax可能不会受到伤害.如果你想要一个普通的"网站管理员"类型的工作,设计背景将有所帮助,但请注意,那些通常不是面向编程的工作,因为你可以在普通网站上做的大部分工作通常使用现成的CMS更好(你除非您正在做的网站在某种程度上具有很强的功能,否则通常不需要重新发明轮子.正如其他海报所说,如果你想要更多的公司,C#/ .NET可能会很好.

真正的问题是:你喜欢做什么样的工作?是什么让你开心?找到并做得好,你就能得到一份工作.:)

  • 别忘了骰子.那可能是那里最重要的工作.实际上,通过对技术进行骰子搜索,您可以知道大多数时候它有多热. (3认同)

Ala*_*lan 6

这实际上取决于你打算做什么.

我相信以下技能对于所有类型的"程序员"都很重要,无论他们选择何种语言.

  1. 准确的估计.为您的老板提供准确的估算可以让他们的工作更轻松,让您的生活更轻松.
  2. 通讯.能够有效地与您合作的每个人进行沟通是必须的.
  3. 知道何时寻求帮助.就像你写的那样,你不可能知道一切.我宁愿让开发人员向同事寻求帮助,也不愿花几天时间提出解决方案.
  4. 设计模式.每个开发人员都需要了解基本的设计模式
  5. 知道一个好的脚本语言.Perl,Python,Ruby,Bash,Powershell ......随便挑选.


Nic*_*cki 5

我认为开发人员可以拥有的最好的资产之一就是知道如何使用Google.和我在一起.

我和那些不知道如何搜索预先存在的解决方案的人一起工作过.当面对任何软件项目时,我发现问题的一半是通过简单地知道在Google中键入什么来解决的.我知道有很多不同技术的存在,它们是如何被使用的,以及我在其他人的博客上读过的关于它们的一般性喋喋不休,但我从来没有真正使用它们,也许永远不会.但是当一个符合他们描述的问题出现在我的方式时,我知道要输入到谷歌中的哪些神奇的词汇以及接下来要为该特定项目学习什么.

问题的另一半是决定从谷歌搜索结果中拿走什么.CodeProject是一个很棒的探索网站,有时你会发表一篇文章来解决你的问题.有时,您将能够直接在项目中使用提供的代码(我使用Windows Forms LED数字控件来实现这一点),但大多数时候,您只会删除文章的想法并将其用作适用于您的项目的指南.有时你会看一篇文章并决定这个人不知道他们在说什么.能够评估现有博客文章,图书馆和片段的质量,使用,适应或仅仅受到启发是非常宝贵的资产. 你不需要了解所有这些 - 你不可能知道所有事情,你必须在某处画出"神奇的线条" - 但重要的是你能够分辨出看起来很好的东西以及看起来很棒的东西. - 删除和容易出错.

因此,为此,我最好的建议是只使用您感兴趣的技术工作人员加载您的RSS阅读器.您不必阅读每个帖子,但您会感到惊讶你可以通过缩放所有内容来获取多少,并且每天都能看到头条新闻.

对我而言,编程语言之类的东西并不那么重要.我从C++开始,涉猎Java,在PHP工作了两年,并且已经为另外两个人生活和呼吸C#.您可以在一周内学习编程语言.但是,学习通常与该语言一起使用的框架和习语可能需要数年时间,因此对于任何此类框架,您可以确定某些工作涉及到它.在弹跳一段时间之后,你会找到一个你喜欢的(我的是.NET世界),但你仍然会知道你的方式.所以选择你的毒药,但继续阅读以了解那里有什么.一个索引良好的程序员可以很容易地成为一个全面的 一个是因为他知道如何解决在他的舒适区之外出现的新问题.

希望其中一些是有道理的.