旧学校与新学校程序员的问题和/或好处

时间:2008-11-19 19:01:44

标签: agile collaboration

我是一名大学毕业生,在一家劳动力老龄化的大公司工作。我很好奇人们在优先考虑双方的年龄差距方面的经验。

示例到目前为止我遇到的问题:

  • 敏捷实践与瀑布
  • 程序员与个性之间的合作
  • 早上工作到深夜工作

我在学校主要学习敏捷编程,而我所参与的项目(以及大多数开发人员习惯于瀑布)

我习惯于与同学和朋友在项目上合作,而我倾向于看到年长的程序员喜欢自己做事。我觉得我纠缠他们问他们问题。

我发现自己更像是一名夜间程序员,但我的大多数同事都是凌晨(早上5点)

任何有关技术工作年龄差距的经验都是相关的。

12 个答案:

答案 0 :(得分:10)

当我刚从大学毕业时,我是一只夜猫子,我会在上午晚些时候上班,尽管我在其他人离开后都待了好几个小时。与其他人建立融洽关系真的很难。当我试图提问或协同工作时,我也感到不受欢迎也就不足为奇了。

即使您的同事使用被认为过时的瀑布式方法,但这并不意味着它们的工作效率低下。一个成功的项目与团队合作关系比任何特定的方法更多。敏捷方法已经将这个想法编成法典,但它仍然在任何成功的团队中非正式地实践。

你不会改变整个小组的工作方式,所以试试他们的方式一段时间。他们做的时候开始工作。在喝咖啡休息时与他们交谈并与他们共进午餐。提出开放式问题并听取他们的答案。您可能会惊讶地发现他们可以提供一些有用的经验。

我还建议反对试图说服他们采用敏捷方法。相反,您可以练习一些敏捷方法事实上。例如,简单地要求某人俯视你的肩膀以帮助解决棘手的问题(人们通常愿意展示他们解决棘手问题的技巧)。瞧!你是结对编程。但不要称之为! : - )

答案 1 :(得分:9)

可以这么说,我一直在围栏的两边。

敏捷编程的问题在于,与任何工具一样,它并不总是适合该任务。在某些环境中,瀑布式方法仍然有效。

我不认为协作差异来自年龄差异,而是那个公司和工作环境所培养的风格。我在一个国防承包商工作了一段时间刚刚离开学校,几乎每个项目都比我大很多但是有很多合作。另一方面,我曾为每个人都处于同一年龄并且几乎没有合作的公司工作过。

人们要么回答问题/指导,要么他们不会。年龄并不一定会产生太大影响。我和那些比我年长和年轻的人一起工作,但只有少数人真正喜欢回答问题(无论他们是否与项目有关)。

答案 2 :(得分:7)

很好的问题。我已经从事这项业务近50年了,我还在学习。

我想如果我有一个抱怨,几乎所有年轻的程序员都有编程课程,他们的头脑里充满了规范性的判断。这让我想起了亚瑟·C·克拉克(Arthur C. Clarke)的小说“城市与星星”(The City and the Stars),其中人们被灌输,害怕超越城市范围而远远超出理由。

我主要是自学(编程),我有其他工程背景。在其他类型的工程中,没有人担心像魔鬼(即goto)或提升到神话状态(OOP)。相反,每个想法都有利有弊,并且具有或多或少的实用性。一切都以数学为基础,创造力得到重视。

虽然年轻的程序员聪明,乐意,精力充沛,但我希望他们更加好奇和开放。

答案 3 :(得分:5)

如果这种声音听起来很刺耳,我会提前道歉,因为你的情况一直都在发生,所以我真的很开心,也就是说你不是第一个注意到'noobs和'之间区别的人。老人在工作; - )

第一个缺陷:“老派”与“新学校” - 假设你的老年人是“老派”,因此低级被称为偏见,而不是非常好的开始你的职业生涯的方式。

很可能,“老学生”可以并且将围绕您编码圈子,尤其是在他们的域中。由于你的新工作取决于学习他们的领域,也许你应该先学习并与他们成为朋友,并在你赢得他们的尊重之后再尝试教他们......

......并确保你的“新学校与旧学校”的偏见得到控制;如果你的“衰老”同事(好像你免于衰老!)认为你是一个全知的“朋克”,没有人愿意帮助你。即使你真的知道这一切也没关系,没有人喜欢朋克。 ; - )

所以假装前几个月保持谦虚,仔细聆听,并准备好在你实际工作的第一年里学到的东西比你在大学里学到的更多!

至于你到目前为止的具体问题,这是另一种看待它的方法:

  • 瀑布适用于经验丰富的开发人员和不会移动太快的目标
  • 你所谓的“合作”我称之为“打断我的注意力”;代码往往是由单独的程序员单独工作和不间断地编写的;持续的多任务处理效率低下
  • 正常工作时间工作是正常员工的工作;习惯它。当您的客户也在办公室时,在办公室工作是有利的。当然也有缺点。两者之间的平衡称为“时间管理”; - )

作为企业菜鸟,你期待提出很多问题。只是不要像蹒跚学步的那样每隔十秒钟跳起来打断老年人,挽救一大堆问题并且每天只打断几次。

好消息是,你提出这个问题的事实意味着你关心,只要你的老年人能够感觉到这一点,他们也会关心你。

答案 4 :(得分:4)

我认为您所处理的问题与年龄有关。我有两倍于我年龄的程序员的丰富经验,并从他们那里学到了很多东西。反过来也是如此。

总有一天我会成为一名老程序员,但这并不意味着我必须成为“老派”。

继续学习并乐于接受新想法。

答案 5 :(得分:3)

你需要适应群体,他们不会改变以匹配你,但这并不意味着你不能逐渐引入变化。

虽然你会发现一些不喜欢回答问题的人,但如果你表明你真的对这个问题感兴趣,大多数人会特别喜欢。

向团队领导/经理询问您可以使用更现代化的方法进行的小项目(敏捷可能很难通过自我实现)。向人们展示它的工作原理并展示它是如何更好的。

要委婉,尽量不要让人心烦意乱。记住“老年和背叛会击败青年和技能”。不要参加你无法赢得的战斗。人们会抵制变革。

答案 6 :(得分:1)

Waterfall是一个有缺陷的,不起作用的软件开发模型的例子。不幸的是,这听起来并不像你能够向老年同事指出这一点。 :)

我建议你不断向不同的人提问,直到找到有兴趣指导你的人(或少数人)。我在职业生涯中接受的任何教育或培训都没有像我所拥有的一些非常好的导师那样有价值。

一旦找到导师,我建议你尝试解决他们的日程安排,至少在一段时间内。提问时不要觉得太糟糕,因为这是你学习的唯一方法(谷歌它,或者先在这里问你的问题,所以你不要问他们太多很多简单的问题)。

祝你好运!

编辑:由于我的原始答案的前两句似乎只是被阅读,我认为我最好提供更多链接来支持我所说的。

请注意,最后一篇是Royce的原始论文。

答案 7 :(得分:1)

一如既往地取决于环境和公司文化。如果你的公司工作是在上午8点到下午5点开放,那么如果你喜欢夜晚并不重要......

至于不同的方法,它实际上只取决于其他人是否“在船上”,最终是否会产生任何东西。我自己来自Cowboy Coder方法论小组,但是当我在一个需要大量合作的项目上工作时,我必须做一点。无论方法有多棒,如果它妨碍了按时交付产品,那么没有人会关心。

答案 8 :(得分:0)

我最近也是大学毕业生。我与老化的开发人员合作,但在大多数情况下,他们采用敏捷方法并理解为什么我们的目的是使用它而不是瀑布。我承认他们执行它有时不正确,但至少他们会尝试。

我发现企业利益对试图正确使用敏捷方法造成了更大的压力。当你找到一位企业高管时,尝试使用敏捷,告诉你计划所有任务并一次估算10次冲刺的时间。试图告诉他们它可能会改变并且没有任何意义会导致愤怒的呐喊。像这样的问题使年龄差异显得微不足道。

答案 9 :(得分:0)

语言。我不仅仅指COBOL和C#,还包括用于描述问题和解决方案的词语。我经常发现自己在与旧COBOL程序员的对话中遇到困难,因为我们缺乏ABENDS的共享语言,工作存储(旧学校),方法,自动化单元测试(新学校)等等。与生活中的许多其他问题一样,“知道是成功的一半” - 一旦你认识到这个问题,你就可以努力克服它。

答案 10 :(得分:0)

听起来好像企业文化不是你觉得舒服的。你有两个选择,或者习惯它,一个非常初级的程序员不会改变文化,或者在工作环境中找到另外一个你想要的文化。

我在工作场所看到的最大的年龄问题是,许多年轻人认为他们是最好的,最知情的群体,他们想要的只是做事的唯一方法。他们认为工作场所应围绕给予他们特殊待遇,即使他们没有任何成就值得这样的待遇。他们认为他们应该得到最有趣的任务,因为无聊的任务在他们之下。在尝试将其更改为最酷的新事物之前,他们不想做出理解现有系统的艰苦工作。企业界并不关心某件事是酷还是有趣,也不关心团队中最初级的人想要什么。也许这对你来说似乎不公平,但这就是大多数公司的情况。

老年工人更了解公司政治如何运作并更好地理解游戏规则,因此他们更有效地获得他们想要的东西。请注意,我并不是说我们这一代在我们年轻时就更好了。

总有一天,你也会成为高年级学生,你会抱怨年轻人,他们比你们这一代人更糟糕。可怕的想法,不是吗? (我什么时候变成了母亲?为什么我还不是26岁?)

答案 11 :(得分:0)

从我所见过的所有内容来看,尽管在3年左右的行业经验的短暂时间内,所有开发人员都会分为两类中的一类,无论年龄或经验如何。

  1. 那些总是在软件领域中学习和实现变革的人是不可避免的,并且乐于接受或全力以赴地欢迎它。

  2. 开发人员认为他们足够好,只是“做好自己的工作”而对开发人员的成长没有兴趣。

  3. 我看到很多年龄段和年龄较大的开发人员属于每个类别,我绝不想与属于#2类别的任何人合作,因为他们真的很低劣,只会对项目造成损害。我很乐意接受一个专注于学习和成长的大学实习生(假设他们能够正确地运作逻辑),而不是任何人,即使是几十年的“经验”都属于第2类。

    人们似乎并不想提起这件事。经验本身并不是对结果期望的描述。有不好的经验,开发人员要么属于第2类,要么一直受到第2类开发人员的影响,这往往会给项目带来更糟糕的经验和更糟糕的决策,而不是没有经验和没有先入为主的观念的开发人员。 / p>