资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
JAVA 电商项目经理的技能细则作为一个电子商务的项目经理,肯定想要打造一流的 Web 产品开发团队,那在团队成员基础能力上一定要下功夫。国内多数的电子商务网站开发团队人员分为几类:几十个前端与后台开发工程师,一个架构师(也有的是技术总监或是项目经理来兼职做),一个项目对应一个项目经理,一到两个运维,一到几个DBA,一到几个美工. 在中国,对于项目经理的技术水平要求比较全面,不一定优秀,但至少做到良好,可以胜任团队中任何一个开发的角色, 因此对于电子商务项目经理来说,通常按所掌握的技能区分为NET/JAVA 项目经理, 那么首先从前端工程师开始分析: 对于 Web 前端产品开发来说,仅仅掌握 Web1.0 时代简单的“网页套接”是完全不够的。我结合自己的团队配备,特此罗列了 Web 前端产品工程师所涉及的技能列表如下:通过许多实际项目,个人认为一个完备的前端产品开发团队,必须拥有如下的人才配备,也希望大家补充: 团队全体成员达到所有技能中的 a 级标准 团队全体成员必须掌握两项技能中的 b 级标准,并保证所有的 b 级标准在该团队中有 50%以上成员能达到 团队全体成员必须掌握一项技能中的 c 级标准,并保证所有的 c 级标准在该团队中有 25%以上成员能达到具体技能描述:【必备】UserInterface PhotoShop/Fireworks Design1. 配合美工将草图形成具体的符合 WebPage 的设计2. 有快速制作分层高品质 PSD、PNG 的能力3. 能迅速将 PSD、PNG 的内容构思成 div+css 或者 table 等 HTML 代码 Flash Design1. 基本动画效果2. 复杂的交互体系设计,了解第三方 swf 辅助设计软件3. 复杂的交互体系设计以及较强的对各类外埠资源(PNG、JPG、MP3、WAV 等)的整合能力。精通部分第三方辅助设计软件(AE、SwishMax、Swift3D 等)【必备】Browser-side (Web Application) XHTML/CSS1. 基本的 layout 实现2. 严格跨平台的 layout 实现。以优雅的 HTML code,尽可能符合标准并有 SEO 的考虑因素。在任何平台、浏览器下基本保持一致。不要求了解各种 CSS 的 hacks,但要求知道遇到问题应该如何查阅 资料以在第一时间内解决。能够为 JavaScript 开发人员提供最好操作的 DOM结构,让 JS 开发人员在开发的时候认为”一切都已经准备就绪了”,而不 是”捉襟见肘”。 JavaScript/Ajax/DOM1. 基本的 DOM 操作,了解 AJAX,可以实现数据通信2. 基本的 DOM 操作,能写高效率的 OOP 代码,以降低维护成本3. 基于需求,进行不同的开发,选择合适的框架,做到代码效率最高,用户体验最好,代码下载量最小,并且可以在单独甚至更多产品线中最大限度重用代码 Flash Developement1. 基于 Timeline 的 ActionScript 操作,能实现简单交互2. 掌握 a 外,能实现数据层通信(与服务器以及本地 SharedObject)3. 精通 AS1-3,能根据需求进行各类 RIA 开发。无论是要求支持 FlashPlayer8 的,还是FlashPlayer9 的,都能做到开发效率最高、灵活性最大(比如对 HTML 层的接口设计,等等)。【必备】Client-side (Desktop Application) Apollo1. 产品级的封装,基本技术了解(如何打包、如何加入 HTML 和 JavaScript 等)2. 掌握 a 的同时,能利用 Apollo 的 API 独立设计、开发 OS 的文件 I/O 功能。3. 掌握基本技能的同时,对”3D 概念体系”有所认知。这里”3D”即:Design(设计)、Development(开发)、Deploy(产品部署)。能用 Apollo Windows Presentation Foundation、WPF/E(Silverlight)【增补】Server-side (修改:经考虑,这个技能不参与评级)本来列举了”1、Server 端简单的技术、脚本”和”2、MediaServer(Red5)接口”作为”Web 前端工程师技能列表“的一种(服务器、数据逻辑层技能的)评判标准。但对于前端工程师是否应该掌握 Server端技能的必要性表示怀疑。确实,要掌握好上述的展现层技能不是容易的事情,而且前端工程师的确非常辛苦。但是,站在另一方面来说,辛苦的原因是什么,我不知道在你日夜奋 战 div+CSS 的时候思考过没有。就我的经验,前端的辛苦在于以下几个方面: 重复劳动多大量的 div+css 都是重复的,即便可以复制粘贴,但几千行的 div 海洋中去寻找一个入口恐怕都非常痛苦 需求变更多往往你折腾几个小时终于把跨平台问题解决好了,而且在 IE6、7 和 Firefox 下面都能显示同样的效果了,甚至连 JavaScript 交互都已经快搞定了。突然上面说需求要变。这无疑是莫大的痛苦。也许表面上看,这跟 Server 端技能无关,但我觉得有好的 Server 端的意识,一定会有所帮助(当然不可 能解决所有的问题)。毕竟信息结构和数据库是密切相关的,而 Server 是连接数据库的唯一渠道(至少大多数 B/S 应用如此)。掌握 Server 端的基本技能,对于同逻辑层开发人员设计接口是非常重要的。而且 HTML 表现层在开发时与数据的分离,也与 Server 端的各种模板技术有关。例如 jsp 的 model2 概念等等。HTML 结构如何设计,如何让 HTML 重用,甚至在 HTML 层进行 OOP 的开发(我现在 在新产品线中设计的前端开发流程),都需要 Server 端的支持。此外,对于创业团队,往往人手非常有限。为了让运营成本降到最低,所有的技术人员都有义务对 Server 端技术有所了解。总结:我认为,可以不了解技术细节,但应该知道原理,最好能掌握一两套设计思想(毕竟数据逻辑都在这里走,光看 HTML 和 JavaScript,对人的见识还是有局限的,这种局限限制了我自己很久的时间),那将是一笔宝贵的财富。看到很多朋友留言说前端工程师没前途,我在想,同时掌握移动设备的技能是否也是拓展前途的一个必要性?这里再 多说几句,关于技术人员的前途,目前在国内确实得用”惨淡”来形容。浮躁的氛围让技术人才往往过早放弃了自己的技术生涯,而尔虞我诈的整体道德水平也让单 纯的技术人员痛不欲生(我身边太多了,恩,不说具体细节了,呵呵)。作为一个技术人员,开发人员,在保持纯粹地敬业心态(这是前提,这么没有,啥也别谈)外,更要学会如何保护自己,如何壮大自身,社会不会同情你,只有你自己才能保护你自己。下图是前端技能图:在决大多数公司,都没有一个完备的前端+后台产品开发团队,更达不到软件公司开发的规范标准,人才配备上以全面为主,一人多能是普遍现象因此对于 Java 后台开发来说,首先要达到 WEB 前端工程师的 A 级标准。还要掌握测试工程师的基本技能。下面涉及到的技能列表只包括 JAVA 开发,勉强分为两级,需要掌握的 WEB 前端的技能不在重复说明,具体如下:【必备】1、你需要精通面向对象分析与设计(OOA/OOD)、涉及模式(GOF,J2EEDP)以及综合模式。你应该了解UML,尤其是 class,object,interaction 以 及 statediagrams。2、 你需要学习 JAVA 语言的基础知识以及它的核心类库 (collections,serialization,streams,networking,multithreading,reflection ,event,handling,NIO,localization,以及其他)。3、你应该了解 JVM,classloaders,classreflect,以及垃圾回收的基本工作机制等。你应该有能力反编译一个类文件并且明白一些基本的汇编指令4、如果你将要写客户端程序,你需要学习 WEB 的小应用程序(applet),必需掌握 GUI 设计的思想和方法,以及桌面程序的 SWING,AWT,?SWT。 你还应该对 UI 部件的 JAVABEAN 组件模式有所了解。JAVABEANS 也被应用在 JSP 中以把业务逻辑从表现层中分离出来。 5、关系型数据库:你还应该了解对象关系的阻抗失配的含义,以及它是如何影响业务对象的与关系型数据库的交互,和它的运行结果,还 需要掌握不同的数据库产品运用,比如:oracle,mysql,mssqlserver。6、J2EE:你需要学习 Servlets,JSP,以及 JSTL(StandardTagLibraries)和可以选择的第三方TagLibraries. JNDI(JavaNamingandDirectoryInterface),JMS? (JavaMessageService),JTA/JTS (JavaTransactionAPI/JavaTransactionService),JMX? (JavaManagementeXtensions),以及JavaMail。【增补】7、你需要熟悉主流的网页框架,例如 JSF,Struts,Tapestry,Cocoon,WebWork,以及他们下面的涉及模式,如 MVC/MODEL2。8、你需要学习如何使用及管理 WEB 服务器,例如 tomcat,resin,Jrun,并且知道如何在其基础上扩展和维护 WEB 程序。9、你需要学习分布式对象以及远程 API,例如 RMI 和 RMI/IIOP。10、你需要学习最少一种的 XMLAPI,例如 JAXP(JavaAPIforXMLProcessing),JDOM(JavaforXMLDocumentObjectModel),DOM4J, 或 JAXR (JavaAPIforXMLRegistries)你应该学习如何利用 JAVA 的 API 和工具来构建 WebService。例如 JAX- RPC(JavaAPIforXML/RPC),SAAJ(SOAPwithAttachmentsAPIforJava) ,JAXB(JavaArchitectureforXMLBinding),JAXM(JavaAPIforXMLMessaging),JAXR(JavaAPIforXMLRegistries), 或者 JWSDP (JavaWebServicesDeveloperPack)。11、你需要学习一门轻量级应用程序框架,例如 Spring,PicoContainer,Avalon,以及它们的 IoC/DI风格(setter,constructor, interfaceinjection), 并且会使用至少一种 persistence/ORM 构架,例如Hibernate,JDO,?CocoBase,TopLink,InsideLiberator(国产 JDO 红工厂软件)或者 iBatis。12、你需要学习如何管理与配置一个 J2EE 应用程序服务器,如 WebLogic,JBoss 等,并且利用它的附加服务,例如簇类,连接池以及分布式处理13、你需要熟悉对不同有用的 API 和 frame work 等来为你服务。例如 Log4J(logging/tracing),Quartz(scheduling),JGroups (networkgroupcommunication),JCache(distributedcaching),Lucene(full- textsearch),JakartaCommons 等等。14、你应该熟练掌握一种 JAVAIDE 例如 sunOne,netBeans,IntelliJIDEA 或者 Eclipse。
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号