程序员工作内容,在普通的公司里,程序员的工作是什么样子?新手怎样得到提高
在普通的公司里,程序员的工作是什么样子?新手怎样得到提高?
每个程序员的能力是有限的,一个复杂的软件常常包含很多方面的开发。例如我参与开发过的播放器,看起来很简单但涉及到视频解码、音频解码、网络通信、数据管理、播放控制、播放界面等等一系列的开发问题。如果需要一个人开发出来,对能力和时间的要求太高。因此都是部门经理将各块相对独立的功能分配给大家协同开发。
当然这也需要看公司。在小公司中需要的是全才,领导常常要求你一个人搞定所有事情。而大公司则常常是一个人只负责一部分,你只需要深入研究你负责的部分就行。我每天的工作也没什么特别的,按照领导的任务要求编写新代码,维护以前提交的旧代码,每个星期开次会汇报进度。每天都很规律_(:з)∠)_
我目前进公司接触多媒体开发就半年,也算一个新手。进入公司首先就是需要熟悉目前使用的框架,只有熟悉了框架才能在此基础上开发。熟悉框架考验的就是代码阅读能力,这个没办法快速提升,只能多看多试验。领导分配任务后要把任务相关的基础知识研究透,多积累,能够拓展思维把任务做到最完善。作为新手其实还是不清楚自己想干什么能做什么,主要还是跟着公司分配的任务走,能够解及时决问题实现功能,我感觉这样提升最快。
产品员和程序员的工作任务和内容?
产品员的工作内容是对软件产品进行设计,功能进行规划。程序员是针对软件模块的功能进行编程,初级测试。
产品员的工作成果是程序员的上游产品,程序员对产品进行具体的编程实现。两者的区别和联系如上面展现。希望主这个解释对读者带来价值。
程序员的职责就是写代码的?需要考虑产品的方向吗?
程序员应该有产品意识,不一定要理解什么是市场分析、什么是客户肖像,但是至少要理解产品所在行业的典型特征、基础的行业知识。
产品和程序员的关系对应的是软件需求与实现的关系,程序员应该守住程序员的底线,底线就是实现功能、写好代码,但是写好代码的前提是要知道你做的东西是要达到什么样的,给什么人用,这就不可避免要了解产品的定位以及走向,这些因素都直接影响产品的设计(包括框架的制定,扩展性的考虑等等),进而影响产品的开发调试、上线运行、迭代完善、运维服务等各个环节。
另外,了解产品也是个人成长和职业晋升的必经之路,在程序员当中能做到这点的不多,不过也不少,比如:比尔.盖茨、乔布斯、雷军、周鸿祎、张小龙等这些行业大佬来说,都是程序员出身,他们除了代码能力强悍,更重要是深度理解产品用途、把握目标客户群体、行业真实需求、洞察人心人性。即便对于一般程序员而言,多了解一些产品需求、多一些产品意识,也能够有效减少与产品经理的争执,顺利顺心、和谐和气推进产品开发工作。
最后,要强调一点,程序员的本职工作是产品功能开发、代码实现,开发之前可以探讨、提出自己的意见想法,一旦方案确定下来之后,明确需求之后、高效执行是自己最基本的工作,不要让自己天马星空的创意奇想打乱了工作的进度节奏。当然,如果发现自己在产品需求、规划、设计方面更有潜质,可以往产品经理、产品总监这些岗位、职务上努力,但最好先要证明自己是一个靠谱的程序员。
