小公司的程序员和大公司的程序员哪个技术更扎实?

项目经理笑哈哈


严格的说,这两者没有什么必然的关系,大公司和小公司,都有技术牛人,也都会有混日子的人。

那么哪些方面会影响到程序员技术能力的提高呢?我认为有这几个方面:

技术栈

一个公司/项目用到了那些技术,对程序员的影响会很大;有些公司还以SSH为主流开发框架,有些公司已经使用Spring Cloud做微服务了,这种差别还是很大的。

我在上一家单位,用的技术主要是Struts+Spring+JDBC,当时要不是我比较上进的学习了包括SpringBoot在内的一系列框架,可能我后面找工作的时候,会非常的困难了,15年那会儿,SpringBoot还算前沿技术。

技术氛围

有些IT公司需求不连贯,所以有可能会发生:两个月拼命加班,第三个月却没事儿做。特别是一般大型传统行业的IT部门,经常会遇到“空档期”(互联网公司的迭代速度都很快)。

  • 什么是技术氛围不好的公司?比如我就职的第一家单位,每到技术空档期,大家就上上网、聊聊天、看看小说什么的,很少有人主动地学习新技术,讨论架构设计。就算在工作繁忙时期,大家基本上也是把功能实现可就好,而不会考虑有没有更好的解决方案。

  • 技术氛围好的公司呢?有定期和不定期的培训可以参加,有大量的学习资料可以研究,有很多技术牛人可以请教。

  • 有的时候就是这样,周围的人努力,你也会努力;周围的人懒惰,你也会跟着懒惰。

自我驱动

外部影响虽然重要,但是最终还是要靠自己的努力。

“8小时之内求生存,8小时之外求发展”。这句话虽然有些鸡汤,但是说的还是很有道理的。

建议大家下班之后,除了花时间陪家人和兴趣爱好之外,最好还是花一些时间,去研究研究技术,敲敲代码,甚至做做自己的产品。

我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。


会点代码的大叔


作为一个大公司和小公司都呆过的人,还是想吐槽几句。

程序员基本功和是不是大公司没有直接关系,还是和个人有着直接的关系,相对来讲大公司对于由于模块分工比较详细,对于代码质量的管控相对严格点,小公司由于一个人当几个人来使用,在代码质量上管控可能会稍微差点,但不能一概而论,曾经有个同事的C语言基础特别好,然后大家就问他,我这同事说曾经在一个小公司,有个上司很不会给下属留面子经常的出现问题就会在黑板上通报批评,我这位同事经常上榜,开始上榜的次数很多,后来越来越少了,奇怪的是虽然大家都会这种方式很讨厌,但很少人因为这种方式提出离职的,过了些年之后在这个部门呆过的人,都会对这个上级带有无限的感激之情,严师出高徒有时候在企业也是有效的。

所以没有特意区别大公司还是小公司,主要还是和所在部门有直接的关系,更是和直接领导有关系,所以在你遇到好的机会一定要懂得珍惜,依旧还记得去第一家公司第一个带我的技术主管,在自己非常弱小的时候能全力帮助你,这是人生的最大的幸运,如果现在还混得不错的人,要懂得回报生命中曾经对你有帮助的人,懂得感恩的人才会有更大的成就。

作为一个程序员首先对自己代码的质量,要时时刻刻关注,编程是一种极致的体力劳动,涉及到方方面面细节非常的繁多,所以很难面面俱到,所以需要每个点每个细节去优化,拿出工匠精神去对待,所以经常会有这种情况,越是初学的程序员写程序一般都比较积极,拿到任务的模块就呼呼开动了,但很快发现前期写的代码可能存在很大的问题,于是又呼呼的重构,真正的高手很少直接开动搞代码,会思考搜索资料,验证了大量的细节开搞,真正写代码的时间非常短,大部分的时间还是在设计或者调试,所以技术扎实外在会有影响,除非外在的影响特别大,否则主要因素还在于自身,拿出工匠精神认真对待,基本功一定差不了。


大学生编程指南


其实技术扎不扎实跟大公司还是小公司的程序员没有关系,技术扎不扎实主要看个人的学习程度。大公司程序员和小公司程序员的差别主要表现在大公司程序员的技术小而精而小公司的程序员是大而广。我们就来具体分析一下。

大公司程序员主要具有以下几个特点:

1、代码规范成熟,大的公司内部对代码发布流程是有明文规定的,如果代码不按照规范写是无法通过验收的。

2、分工明确,大公司因为程序员数量非常多,所以每个人只负责一个很小的部分,这也是造成大公司程序员技术小而精的根本原因。

3、技术单一,由于分工比较明确,就会导致技术的种类逐渐走向单一化,就比如服务器有服务器的工程师,数据库有专门的DBA管理等等。

4、专业性强,因为这些程序员对一个领域不断地重复,就会越做越熟悉,同时编码的时间也就越来越短。

而小公司的程序员则恰恰相反,最明显的表现是做事综合能力强,每个人可以做各种各样的事情,不仅会服务器数据库,还要编写代码,甚至还要保管故障处理。这就造就了集多重功夫与一身的万能程序员。

其实不论是大公司程序员还是小公司程序员,进入时都需要深厚的学习功底,可以说各有各的好处。在选择时也不能太局限于技术一点,例如大公司程序员想要得到提拔就很难,而小公司就很容易;同时大公司的薪水比较固定,小公司的薪水提成可能就比较灵活等等。


镁客网


我经常给国内大型软件企业做技术咨询服务,所以对这些大型软件企业的程序员比较了解,当然跟小型公司的程序员接触也比较多。在我看来,公司的大小不能作为判定程序员能力的唯一标准,公司的类型往往更能够决定程序员的能力。

有的公司很大,但是主要业务却是外包业务,这些大型外包公司中的很多岗位被程序员们戏称为“拷贝员”,自然这些岗位对程序员的个人能力提高帮助不大。这些岗位的程序员如果没有通过主动学习来提高,到一定年龄之后就会迎来发展瓶颈甚至需要转型。早期国内不少大型软件公司都是通过外包业务起家的,目前也有不少公司完成了从外包到自主研发的结构升级,对程序员来说这自然是好事。

有的公司很小,但是走的却是研发路线,有自己的核心技术和产品,在这样的公司也能得到全面的锻炼。我带的学生中就有人毕业后到一些小公司做研发的,在积累一段时间后再到大公司会得到非常高的待遇。

同类型的公司来看,大公司的程序员岗位划分的更细,程序员更专注,而小公司程序员则更全面。所以,各有特点,不能通过公司的大小一概而论。

我的研发方向是大数据和人工智能,目前我也在做机器学习相关的项目,感兴趣的朋友可以关注我的头条号,相信一定会有所收获。

如果有互联网方面的问题,也可以咨询我。

谢谢!


IT人刘俊明


技术的好坏跟你在大公司还是小公司其实没有太大的关系,技术强的、天赋好的,在哪里你都是技术牛的。

大公司更容易专精、更能够接触到更多的牛人

根据概率学的观念,很显然在大公司,牛人更多,优秀的人、技术更好的人会更多,就好像好的学校成材率更高一样的道理,这符合概率论的理念。

但你不能说,大公司都是牛人,小公司就没有技术牛人,没有要求说斯坦福、麻省理工这样顶级名校的的学生都会进Google、Microsoft、Facebook这样的顶级科技公司,何况你也不能保证每一所名校的学生都是优秀的。


在大公司,你周围优秀的人更多,竞争压力更大,成长可能性更好,各种制度也更加健全,你能够从周围的人学习到的东西更多,这是第一个比较大的优势。

第二一点是,大公司分工更加清晰、明确,每个人都更加专注于某一个方面的技术,就好像说本科学得杂,但是到了硕士、博士,你觉得研究方向就越来越专精一样的道理。

但技术本身与公司大小无关、毕竟你可以自学

最后就是如果你在企业当中,不管是在大公司还是在小公司,都应该注意随时提升自己的能力,在大公司,你能够接触到更大更全的知识、技术体系,更加完备、健全、专精的技术难题,比如在百度你能得到最好的人工智能技术,在阿里你能接触到最高级别的电商并发方面的锻炼。

在小的公司,往往做的事情就比较杂,比较宽泛,但是很难得到千万、上亿用户体量产品、技术的历练,要想提升自己的专业能力,你可能要逛更多的技术论坛、关注更多的开源项目,来提升自己的技术实力、以及加深自己的行业深度。

总之,作为一个技术行业从业者,不管自己以后怎么发展,平时也要多注重提升自己的技术实力,多多学习业务上的知识,这样对于自己长期发展都非常有益。


EmacserVimer


欢迎在点击右上角关注:「太平洋电脑网」,不定时放送福利哦!

我们首先要明白什么时候扎实才行,其实这一个真的很难说的。

你说高级架构师的基础知识不够扎实吗?可能一线的程序员编程会更加仔细和到位。但是这个架构师是决定功能的架构和实现的方式。

你说一线的程序员不够扎实吗?尤其是大公司的程序员几乎都会熟练的重复同一种工作和编程方式。但是在架构上和大方向上还轮不到他们决定。

大公司的程序员的特点就是工作比较规范和程序化,因为大公司的分工对否比较明确。同时,大公司架构比较固定,不会随意变动。可能这个大公司的程序员在某一个语言方面比较擅长,在其他方面不够擅长。

小公司的程序员要看具体的公司,小公司复杂的事物比较多,长期下去涉及的方面比较广。

有一些小公司虽然小,但是个个都是精英,甚至核心员工从微软、谷歌等大企业高层出走出来的。你看看人称教主——楼天城,是谷歌编程挑战第一名,他的创业项目是”小马智行“。“北天城,南世熹”,编程界曾有过如此并称的双子星岁月。有谁敢藐视这家公司的编程能力,恐怕是要被教做人了。


太平洋电脑网


一般程序猿的迁徙路线是:小公司-大公司-小公司。

小公司-大公司这个阶段,很显然是大公司的技术更扎实,因为这个阶段往往还不是核心开发者,大公司流程比较规范,会有更多的时间去梳理升华之前学过的知识,而且会接触大公司所谓的"大牛",也可以从他们身上学到很多东西。就基本功扎实而言,无疑相较于之前会有所蜕变。

大公司到小公司这个阶段,很显然已经有了足够的技术积累,一般会成为开发组长,或者核心开发者,甚至技术领导人。一般追求的不再是项目,完成任务,更多的是渴望实现自我价值,寻找更大的发展空间。他们通常会被小公司挖来作为技术负责人,甚至技术合伙人。单就个人而言,小公司与大公司技术扎实没有多大差异,因为他本就来自大公司。但就团队而已,小公司更多的是技术团队的建设与完善,肯定比不了大公司,因为他们的技术体系已经很完善。

单论小公司,大公司谁技术扎实,从技术体系,已经团队建设来看的话,无疑大公司更完善一些,但就个体而言,那就不一定了。





一笔君


总的来说,小公司程序员更全面,但其掌握的技术不够精深;大公司的普通程序员某方面的技术精深,但不是全栈,无法独立完成整个项目。细的来说,小公司开发团队人少,程序员可能要负责前端,后端,数据库和设计,同时还要做实施工程师,售前工程师(写方案,获取需求,做PPT),极端的时候还要做销售,签合同。这样的话个人从软件设计,开发,销售,售后都有接触,获得的经验比较全面,但小公司这种模式肯定开发不出优秀,先进的产品。大公司的普通程序员生产的是流水线上的一颗螺丝钉,做的是细分项目的某一点,其技术先进性不容质疑,但不能独立生产项目,但大公司的项目经理或架构师又另当别论,他们也全面。至于到底大公司的好还是小公司的好就看招聘需求了,我认为大公司喜欢大公司出来的程序员,中小型公司和初创公司喜欢小公司的程序员!


小胖说历史


如果要对比大小公司哪里的程序员技术更扎实,我感觉可以比较大小公司哪个更容易留住人才?乍一看应该是大公司,但也确实如此。但现在越来越多从大公司出走的人才,甚至从BAT大厂出走,自己组建小公司。

大公司的技术底蕴更深厚,安全性,扩展性都能够得到保障,但对于新员工不是太别友好,难以接触核心技术,扮演一颗螺丝钉的角色,但大公司面试的面试官也最注重程序员的基础知识,要求技术扎实。

小公司由于生存压力所迫,要快速完成产品,往往对待新员工的技术基础能力不是太高,甚至有些产品是一个生手程序员独立强撸出来的。但同样对程序员也是种考研及锻炼。

综合所述,个人认为大公司更注重程序员的技术扎实性。不同意见请留言讨论。


漫步大叔路


算平均水平,大公司。小的相对不好招人,只能压低标准。


分享到:


相關文章: