⑴ 公司如何保护源代码不被员工泄漏
您好。感谢您给我这次回答的机会。
首先,我认为这个有两种方法,看你怎么选。
第一种:
限制代码库只能在公司内网访问,公司之外怀能下载代码;
限制只能用公司的电脑下载代码、编写代码、提交代码;
限制访问代码库的权限,发人员不授予访问和自己不相关代码库的权限;
能访问代码的电脑上安装监控软件,号称可以监控所有员工活动;
设置公司网络防火墙,禁止访问github这样的开源网站;
把上面所有的规矩记录下来,教育员工知道,让他们签字画押必须遵守,钣者开除而且报警。
第二种:
招募受过良好教育、品行良好、专业团队工作经验的开发者;
对开发者友善,让他们不会对公司心怀怨恨;
把开发者的利益和公司利益关联起来,让他们不想为了蝇头小利牺牲公司利益。
其次,你可能不知道的东西。
1.绝大部分的公司(bat另说) 手中的源代码商业价值根本不高。
2.绝大部分的公司的源码质量都比不过github的哪些开源类库。
3.绝大部分的公司的源码都属于高度定制化的开发(就是换个公司,这个软件几乎就没有什么价值了)。
4.绝大部分的公司都不是靠“软件技术”赚钱的。
5.绝大部分的人都不会傻到直接把偷来的源码用于“商业活动”(非但不一定赚钱还可能吃官司,还不如去github上扒开源代码)
6."防御"的成本数倍于"重新开发一套"软件.
所以看淡一点源码,它在绝大多数公司中其实并不值”几个钱“虽然它的创造成本可能”很贵“。
所以说,这些东西掌握以后,就基本上不用担心代码被泄露了。
理论上做到公司电脑无法和外界连通,进出人员不得携带任何外设就可以彻底解决代码泄漏的问题。但是商业公司比较难做到。下面我们来的分析一下员工有没必要窃取代码,有没能力窃取到下完整的代码。
现在有一定规模的公司应用都是服务化的,不同的小组负责不同的服务,有各自的代码查看权限。所以一个或者几个程序员无法拿到全部代码。
超大规模的应用就更复杂了,有前台,中台,后台,APP等,架构也极其复杂,就算某个程序员获得到了全部代码,也没有能力搭建并运行起来。
小规模公司的代码基本都是业务逻辑代码,泄不泄漏可能也没有太大关系。
防止别人偷拿代码是很难的,倒不如加强企业文化,提高员工的职业素养。尊重是互相的,做到用人不疑,我想大部分人也不会以怨报德。
说说我们公司是怎么做的吧:
1. 封了网络文库、网络网盘、CSDN等网站凡是能上传文件的网站,我们公司都封了,这样就防止员工把内部文件上传到这些网站被泄密。但是这样做的一个后果就是员工想查一些资料,在这些网站都打不开,只能用自己的手机去查了,造成了一些工作的不便。
2. 封了USB、蓝牙接口,以及光驱凡是能从电脑上拷贝文件到外部的接口,我们公司都封了,这样员工就无法把公司的文件拷到外面了,避免了泄密。这样做的后果也给我们带来了一些工作上的不便。比如以前我们做蓝牙测试的时候,需要把测试的App拷贝到手机上旧非常困难。后来公司了解了我们的困难,允许我们提申请,经过上级领导的批准后,可以给电脑开通USB权限,但是拷贝的内容也是被公司监控,所以也只能拷贝需要的内容。申请的时候有选择开通的时间,到期后,USB权限自动关闭了。
3. 禁止将公司电脑带出公司为了防止员工私下里想办法把公司电脑的文件拷走,公司禁止把电脑带出办公室。如果需要带电脑去客户那里,则需要向公司提出申请,申请的时候也要选择带出和带回的时间,这样基本上就杜绝了员工泄密的可能。如果员工在外出途中丢失了电脑,这就会成为一个大事件,会汇报到公司最高层,对员工个人的影响也很大。公司有一套流程专门应对这类事件。曾经我们公司有人带电脑去客户那里,跟客户吃饭喝醉了,打车回家把电脑弄丢了,引起了很大的后果,这个事经常会作为事例来教育全体员工。
4. 电脑里安装监控软件公司的电脑里都安装有监控软件,网管可以监控到每一台电脑。员工在电脑上打印,发传真、发邮件这些活动都受到监控。打印机也能看到每个人打印、传真的内容。员工如果有泄密的行为都可以及时监控到。至于员工对着电脑拍照,公司应该也能检测到。所以公司的电脑不要做一些私人的事情,很容易被监控到。
5. 封了QQ、微信等可以传输文件的社交软件QQ、微信这类可以传递文件的社交软件在公司的电脑上是不能安装的,也防止了员工通过这些软件把文件传输到外面。公司内部只能使用微软自带的聊天工具Lync,这个软件也不能传输文件,只能聊天。如果公司内部需要传输文件,只能用公司的服务器或者邮件。有些大的文件,只能尽量压缩,否则传输会非常不方便。
6. 禁止员工安装公司允许之外的软件严格监控员工的软件安装列表。公司给出了允许安装的软件列表,超出范围的安装软件会被监控到,让员工删除掉。这样员工无法安装一些上传文件的软件了,防止泄密了。员工也不能随意从网络上下载安装文件,防止一些木马病毒藏在软件里,盗取公司文件。
公司防止员工泄密的手段是很多的,每年还要对员工进行安全教育,规范员工的行为。
虚拟化桌面服务器,使用虚拟桌面和瘦客户机,瘦客户机禁止usb存储。瘦客户机不能联网但可以连虚拟化服务器,服务器不能连外网。单独设立一台机器可以联网,也可以连接一台ftp虚拟机(虚拟化服务器中的FTP用于内外网共享文件),联网机器下载的东西了上传到ftp供其他桌面虚拟机使用。桌面虚拟机上传的文件需要管理员通过才能被这台外网机器看到下载。
1,不允许携带电子设备进入工作区域,进门经过金属探测。
2,公司电脑不允许连接外网。
3,封死USB等外设接口。
4,机箱锁死,防止拆硬盘。
5,安装摄像头对准每一个工位,一旦发现使用拍照设备等,进行相应处罚。
这几个只有一起用才能完全防止泄露,否则都有办法。
你去看看某研究院的一些规章。禁止笔记本等带入,不小心带入了,对不起,设备留置24小时,彻底格式化。手机,存储设备也一样禁止带入。开发机全部内网。没有WIFI,鼠标键盘全部有线,粘死。机箱上锁。USB等接口全部封掉。人员权限限制,绝大部分人员不能下载全部代码。
首先管理层面,领导要重视信息安全,然后按照iso27000系列信息安全标准去做。信息安全和物理安全是要互相配合的。办公区要根据安全级别设置不同的管理措施,信息资产要根据价值设置不同的标签,区分关键资产和非关键资产,另外信息资产只能有一个出口要经过审批后才能出去。技术层面的措施也可以用,但是不能乱用。另外开发环境安全可以参考15408的站点审查部分。
防止不了,有合作公司管理严格,我们都用手机拍照沟通,所以除非禁用手机和一切拍照设备,否则都给你拍出来。
我觉吧吧,关键是人。而不是制度。
这么说吧,光有源代码屁也不是。要是没人build都困难。别说上线和运行了。
所以,你要是选信任的人,而不是选信任的方法。那么就算别人真偷了,拿一堆源代码回去,都没办法build,有什么用?
反之,就算没有源代码。人家拍拍屁股走人。然后还他妈实现,你有什么办法?
⑵ 程序员与同事起冲突怒删代码离职!赔偿公司6万元,职场人该如何处理纠纷
一程序员因与同事起冲突擅自删代码并离职,被法院判决赔偿公司6万元。当我们在职场遇到纠纷时,一定要保持冷静,学会宽容忍让,同事之间出现矛盾是正常的,我们要学会换位思考,用自己的真诚去化解矛盾。 如果遇到情绪非常激动的同事,我们不要与其发生语言冲突,这样只会让事态恶化,甚至演变成为肢体冲突,我们最好当时保持沉默,然后等到同事冷静下来后,再主动和对方进行沟通化解矛盾或者求助上级领导帮助解决问题。
当我们进入社会后,我们会发现在职场中学会处理人际关系非常重要。职场遇到纠纷很正常,我们不要将矛盾加深,这样对于我们工作是不利的,也让我们的生活受到影响,最好的方法就是通过沟通解决矛盾。
⑶ 程序员被开除了会怎么样
名程序员抱怨的点就是自己已经被开除,工作也做了正常的交接,但是现在却以命令... 网友们看到后纷纷留言支招,其中有的网友说既然都被开除了,就没关系了,也就没必...
⑷ 程序员辞职带走自己写的源码算违法吗
程序员属于特殊职业,正常来说,公司会与程序员签订保密或所有权协议的。如果没有签订,按照法理来推论,在工作期间所有制作或参与的代码都属于公司财产,属于工作内容范围内的职责,未经公司许可带走或拷贝是违法的,这种行为可有公司自诉也可由司法部分公诉,具体要看给公司造成的损害程度。
⑸ 我培训机构刚毕业出来的程序员,在公司里做软件工程师,项目代码做不出来,被开除了。出bug了就不知道
刚做项目都是这样,建议进一些正规公司,进入后有人带着一起做项目,不懂就问,实际做上2个项目就知道如何做了。不会一开始就让你单独接项目。
1、继续开发行业,找正规公司,不要太在乎工资。
2、做二次开发,一些软件公司有自己的产品,他们有合作商,做二次开发相对来说简单一点。
3、做实施,有开发相关经验一般会优先录取(学历、经验也很重要)。
4、做测试,额,测试行业不是很了解,大型公司的测试都是大神级别的。。。
⑹ 程序员被老板发现从网上抄代码,后果是怎么样
老板会怎么样if(老板对程序开发有了解){ //有了解,一点点的了解即可
认同,见怪不怪;
}else if(老板很开明){ //一无所知,但是开明
信任,尊重程序员的做法;
}else{ //不仅一无所知,还要胡乱猜想
可能需要一个合理的解释;
}
程序员为什么会从网上抄代码
我们程序员不把这个叫做抄,一般称之为“代码复用”。
当程序员需要使用到一个新的框架、类或者方法的时候,一定会做到有迹可循、有理可依,也就是不要乱用。
例如我们一个Spring Boot的项目,现在想用到Rabbit MQ,但是之前没有用过,怎么办?程序员一般会通过这么几种方式:
一些建议
我建议,先试试方案1和3,自己解决不了的话,再去请教其他的同事。
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
抄代码分为三种。
一,整个项目抄过来,不做丝毫改动地把别人的代码照搬过来。这种情况很罕见,一是涉及版权问题,二是网上的代码都是烂大街的,抄过来也没什么意义,也获得不了什么收益。
二,抄框架,这点是比较常见的。拿盖楼来举例,就是把别人打好的地基,搭好的脚手架直接拿来用,省去了基础设施搭建的工作。盖房子就直接开始砌砖,编代码就直接开始写业务逻辑。好处是显而易见的,减少了项目前期的重复工作,节省大量的人力物力。老板家里要没有矿的话,一般不会反对用别人的框架。
三,抄算法。简单的算法可以自己写,比如求2个数的和,很简单,一行代码就搞定了。复杂的,人脸识别算法,没有几百万也有几十万行代码,倾注全公司资源都未必搞的出来, 科技 含量非常之高。这种时候,往往会寻求与专业的算法公司进行合作,通过付费的方式获取到相关的代码。
程序员被老板发现从网上抄代码,后果是怎么样?这样的事情被老板发现了,至少从现在来看一点儿事情也没有,如果能够抄得让项目进度大大提前还不出问题不出Bug,不引起纠纷老板还大大的高兴。给他节约了大把大把的钱,他不高兴还咋的。
当然从网上抄代码并不是说整个项目给拿过来,特别是有知识产权的那种,这样一旦被原版权人发现会引起纠纷。大部分程序员抄代码都是一小段一小段代码实现某种小功能、或者对某些方法、类等等用法的抄,以便于在自己的项目中去实现自己所需要的功能,融合到自己的项目中去,而不是盲目的去抄原封不动的搬运过来,程序员一般很少会做那样的事情的。
程序员很少有不上网去了解查询相关的知识的。而现在很多老板本来就是从搞软件项目出身的,或程序员出身的,早就知道这些招数甚至自己也用过,根本不值得大惊小怪,基本上都会鼓励程序员如果有什么不懂就去网络就去找网上相关的解决方法。
尽快寻找解决方法,才可以尽可能的减少一个问题就被卡死在那里花费掉太多的时间,大部分老板不是让你去当钻研代码的开拓者,而是去当能实现项目功能的技术能手,你用什么方式方法去得到那些技术,大部分老板不会关心的。
所以抄不抄代码基本没人管你,最重要的是抄来的代码是不是能解决项目的问题、加快项目的进度、节约项目的成本,只要能解决问题为项目带来效益,总监或者老板还会夸奖你是高手,是能人。
更多分享及互动,欢迎点击右上角关注【东风高扬】。
如果你能抄代码,请选择正确的抄代码的方式,来推荐几个我认为好的网站。
如果有一个网站的提问,可以涵盖你基本90%以上的日常开发问题,那就是这个网站。这里什么方面的代码都有,如果你是一个好的程序员,建议你可以来这里抄代码。
如果你还没有自己的github账户,那你得赶紧来注册一个。GitHub上有好多好的开源项目,Vue,React等等,如果你想看一想好的项目,建议来GitHub看看
如果你善于使用搜索引擎,那你已经比一般人好太多啦。学会使用一些搜索的技巧,能提升你快速找到问题。
所以,我觉得抄代码没什么,我觉得正确的方式,是如何去抄好的代码,去看别人的优点,然后可以使用到自己的项目,这完全没有问题。
拿着高薪的程序员,最熟练的两个快捷键就是ctrl+c 和 ctrl+v。
看到这里你是不是觉得:
哇,做程序员太轻松了吧,了解相关的知识,每天复制黏贴就可以了,还拿那么高的工资,还有没有天理了?
首先“代码复用”这个情况是很普遍的,从 社会 学和经济学来看,复用这个行为是值得肯定的,因为它能够避免浪费有限的 社会 资源。
如果合理地利用开源代码,可以避免“重复造轮子”的动作,从而解放大量的程序员去进行更有价值的开发工作,加快开发效率,以达到资源价值的最大化。
想要把开源代码做成适合公司项目的功能,本来就要求这个程序员的基础扎实,如果没有相关的项目经验,又如何对代码进行维护?
知其然,更要知其所以然。
这就是高薪程序员的高明之处:他们用开源代码来解决自己的问题,把架构、思路融会贯通再变成自己的逻辑表达出来。
程序员主要是实现功能需求,至于怎么实现的,是不是从网上抄袭得又有多少关系,现实中又有多少程序员不是从网上直接复制代码然后应用在自己模块中,把优秀的代码看明白然后灵活应用写在实际代码编写过程中特别常见,现在的开源社区不就是典型嘛,拿到源码然后搞明白,进行各种定制,很多公司都会正大光明的这么去做,在当今的技术领域特别正常。
如果真是老板发现了代码和网络上接近,但是功能用起来没有啥问题,如果因此找到程序员说事,那这老板才是有问题,正常来讲代码的审核主要还是在于直接的技术主管,老板都操心到代码是不是从网上找的了,方向估计该处问题了,老板正常来讲关心的是结果有没有达成,如果进一步拓展自己的业务圈子,把产值最大化。
希望能帮到你。
老板的态度无非是要么是置之不理,要么是批评开除。从老板的态度上可以折射出很多东西来。
置之不理:老板要么不懂程序要么懂程序,老板不懂程序置之不理也正常,如果老板懂程序,那他应该明白这是正常现象。这种态度属于明智之举。
批评或者开除:那老板肯定是不懂程序的,既然不懂程序,就不要在那瞎指挥。团队里自然会有总兼把关恒量。老板的职责是统筹大局,如果这些细小之事也要插手的话,不要留恋立即走人。这里绝对会限制你的发展。
项目本来就是以结果为导向的,任务急,工期短,尤其在创业型公司里,从头到尾从零开发,要耗费多少精力多少人力?我们就要学会“拿来主义”啊,去除糟粕,取精华!
作为码农,将别的功能代码拷过来稍作修改,完成了自己的工作,这样的方式简单快捷,好用,bug少。
能抄到代码,还能知道到哪里抄代码,知道应该抄什么代码,哪段代码,抄完之后怎么融入进去,并且还能解决问题,结果代码还真跑起来了!这也是本事!这也是励练自己的一个方式!
所以自己要对抄代码也要保持清醒的认识,我能故我抄!
俗话说的好,“天下文章一大抄”。我们在工作时,新闻稿、会议纪要等等也是有一定的模板,我们只需要比着葫芦画瓢就行了。那么,程序员从网上抄代码这件事情,如果被发现,会面临什么样的处置结果呢?
实际上,编写代码时最重要的一条,就是学会怎样利用其他程序员的代码和思路来解决问题。程序员写程序抄代码这件事情,也可以视情况分为三种:抄算法、抄框架、抄整个项目。
其实,简单的算法可以自己写,复杂的,比如一个大型 游戏 ,代码多到足以让全公司的程序员怀疑人生。而且一般这种复杂的代码需要和大型的算法公司合作,也不是简单的在网上随便抄一抄就能抄到的。
抄一个应用或者是功能的的框架这件事情,好处也是显而易见,减少了自身这个项目前期的重复工作,节省大量的人力物力,同事还能在现有的而基础上做一些自己需求上的改进,何乐而不为呢?而且应该很少有程序员去真的从最基础的时候一个字母一个字母的敲一整个程序的代码吧。
但是!整个项目不做丝毫改动地把别人的代码抄过来,这就涉及到一个版权和隐私的问题,严重的话是要负法律责任的。
所以说针对程序员从网上抄代码这件事情,要面临的结果无非下面两种,要么老板置之不理,要么被批评开除。
程序员要做的是在能抄到代码的情况下,还能知道到哪里抄代码,知道应该抄什么代码,哪段代码抄完之后能融入进去,并且还能解决问题,才是最重要的。
第一,一般公司老板从来不懂技术,也根本看不懂你是不是在搜资料还是。第二,就算发现你抄,那也是正常,初级程序员抄代码已是常态。关注一下再看下面的精彩哈。
文| 科技 黑洞宇文笑
本人是在某世界五百强企业,公司的老板肯定是见不到的,部门总经理也几乎从来不会在我们这些普通程序员这边逛 ,而且不懂技术。至于所谓的老板,应该是那些技术总监,可惜技术总监一般情况也不会碰你的答案。而技术总监下面一般是技术经理,普通程序员就归技术经理管管,跟着做项目,即使他发现你抄代码,也不会说什么,只要你能完成自己手头上的任务,无论你用什么方法实现。甚至他会教你“抄”哪的,其实这是叫你借鉴代码,这样你才能完成你的左右。
现在程序员抄代码,是比较普遍的,抄网上的,或者复制同事的。复制同事的函数直接不改,就有些无脑,而复用别人的代码,反而是正确值称赞的,这往往能提高代码的整洁度。如果你抄网上的,一般是没有现成可以用的代码,只能借鉴其思路,然后结合自己的业务,写一套自己的代码,这种做法往往还需要程序员有不错的基础,不然你连别人的代码都不懂利用。
程序员宇文笑一句话:
善“抄”代码,反而是一种编程美学,不过请你优雅。觉得说的好赏个关注呗。
产品功能产出流程:
一、产品经理:需求调研、产品需求文档、原型图的产出。
二、商讨需求可行性(移动端、前端、后端、UI、测试、产品)。
三、根据各个职能岗位意见以及需求产出时间成本等等条件因素,修改需求。
四、需求文档、原型图交由UI、后端、测试
1.UI根据需求文档、原型图设计效果图、标注图、切图。
2.后端根据需求文档、原型图设计数据库表结构、接口数据结构、接口文档;
3.测试根据需求文档、原型图写测试用例;
五、如上所产出(计效果图、标注图、切图)(接口文档)交由移动端和前端开发人员开发。
六、开发人员开发完成自测之后交由测试人员进行功能测试以及性能测试。
1.测试人员根据《测试用例》进行功能测试形成报告反馈(移动端、前端、后端、UI、测试、产品)进行BUG修复,需求完善,交互优化等。
2.性能测试包括后端压力测试,移动端的内存等等。
七、最后进行灰度测试或者内部众测。
八、最终产品更新上线。
如上表述,程序员在一个功能开发过程中,最重要的是保证产品功能稳定性、扩展性。至于怎么实现如果没有意外。领导不会关心你怎么实现。而且在程序员这个行业工作要的是思路具体怎么实现复制粘贴代码是很经常的事情。so。。。你这个问题其实并不是问题。
⑺ 程序员离职删代码并赔偿公司经济损失6万元,如何从法律角度解读
程序员离职删代码并赔偿公司经济损失6万元,如何从法律角度解读?
北京当地有一名男子从事程序员的工作,但是在工作当中却和自己的组长之间发生了一些不愉快的事情,双方吵了起来,这名程序员竟然一气之下就直接把自己之前所编的程序员代码给删除掉了,然后他就从这家公司离职了,但是他的做法却直接给这家公司带来了非常大的损失,所以这家公司就直接把这位已经离职的员工告到了法院,并要求他赔偿公司的经济损失。法院经过审理之后,判定这位员工需要向这家公司支付六万元的经济损失赔偿。
⑻ 一程序员离职前删光代码遭公司索赔52万!该事件起到什么警示作用
警示全社会的人民不要个人的一些行为,给其他人带来不必要的麻烦,。同时警示社会上的很多人们在遇到问题时,要学会冷静处理,要学会不要让自己的情绪控制言行,不要去用暴力解决事情。
⑼ 程序员被辞退后写代码给自己转账,其行为在法律上会被如何定性
离开公司后,程序员仍然掌握原公司的账户信息,利用自己的技术专长窃取公司资金。被告人马某被浙江省杭州市临平区人民检察院依法提起公诉,被判处有期徒刑四年二个月,并处罚金。如果用人单位口头上说要辞退你,你可以按时上班,也可以在收到正式书面通知(加盖公章)之前,要求用人单位给你书面通知。
处三年以下有期徒刑、拘役或者管制,并处或者单处罚金。(2)个人盗窃公私财物数额巨大,从3万元至10万元不等。处三年以上十年以下有期徒刑,并处罚金。(3)个人盗窃公私财物“极其巨大”,从30万元到50万元不等。处十年以上有期徒刑或者无期徒刑,并处罚金或者没收财产。从具体情况来看,比如盗窃数额较大,法定最高刑为三年有期徒刑,那么追诉时效为五年,而数额特别大或者有其他特别严重情节的,法定最高刑为无期徒刑,那么追诉时效为二十年。
⑽ 员工离职时考走源代码算不算盗窃
算是盗窃商业机密行为,不过警察帮不了你,必须找律师,
当初你们签协议的时候,有没有商业机密保护条款,三年内不得从事同行业。