热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

大麦回忆录-maibox开发

这些天我又写起来了博客,大概是因为最近不太忙,而且也想总结一下最近学习的东西,看到上次说的大麦回忆录,说实话感觉文采挺不错的,因为当时我是写了稿子的。现在写这个就是想到什么就写什么吧。这次的题目叫ma

这些天我又写起来了博客,大概是因为最近不太忙,而且也想总结一下最近学习的东西,看到上次说的大麦回忆录,说实话感觉文采挺不错的,因为当时我是写了稿子的。现在写这个就是想到什么就写什么吧。这次的题目叫maibox开发。maibox是我们部门的一个产品,主要是售票一类的。为什么单独要去回忆这段历史,是以为它算是我在麦+呆的最紧张的一段时间,原因有很多咱们一一道来吧。

5月初,我和芳哥还在一起搞麦+平台的优化升级呢,我们还在为麦+平台的商品属性配置发愁,因为当时每个人都有工作,就只剩下我和芳哥一起搞了,人手不够,我们只能一点点搞,眼看计划日期快到了但是我们还没有完成工作,这个时候李哥把我们叫到了小屋子,我们以为会挨熊呢,没想到李哥说:最近有一个新的项目需要我们两个人加入,可能会是封闭开发,让我和芳哥做好准备。此时我们心理想的不是说那个未完成的工作怎么去完成,而是听到了封闭开发4个字顿时感觉胸口有点闷。封闭开发就是关在一个小屋子里或者被车接到偏远郊区里去做开发,吃饭洗衣服都不用管,就专心写代码就可以,然后做完项目再出来。当时第一次听到这个解释时,说实话吓出一身冷汗,没听说来到这个公司还有这种开发模式,真的是醉了。我其实是反感的,因为我有女朋友我需要照顾她,她也需要我陪伴她,所以当时其实我很想给领导说,不好意思,我不想去。庆幸的是后来没有真的封闭开发。但尽管如此我和芳哥还是搬到了单独的一间办公司和肖,刘,以及李哥一起搞起了新项目的开发,项目代码;maibox.

领导对这个项目很看重,希望我们可以快点出成绩,我们加班加点坚持了1个多月的时间,那1个多月我们几乎每天加班到很晚,周六还要来加班。甚至周天也来了两个星期。那段时间我很少陪老婆说话,每天下班回家直接睡觉了,为此老婆还很生我气。项目刚开始时,我负责了一个模块,后来发现我负责的模块牵扯到了10多个表,真的十分庞大,但领导要求1个星期就搞定,我压力很大,但说实话,我一向对自己要求很高,如果领导让我一个星期搞定,那我对自己的要求就是4天搞定,所以那4天我几乎每天都加班加点,连喝水的时间都没有,做了两天后领导说能不能再加快,4天搞定,那我只能再要求自己3天就搞定。就这么一直强迫着自己工作,终于,我生病了。

有一天我没有去上班,因为我太累了,我需要休息,那几天,我做梦都想着代码怎么写,甚至在梦里我都看到了自己的代码出现了bug,白天去看代码果然发现有这个bug。你说这是不是很神奇。不过那次生病倒不严重,我没打针没吃药就休息了一上午下午接着又去上班了。这只是那一个月的一个缩影,你可以想象那一个月其实是很辛苦的。通过1个月的努力,我们终于搞除了maibox1.0系统。紧接着开始了第一轮的测试,在测试中我们又不断的修改bug。主要的bug还是前端,因为前端用的wpf技术,大家对这个技术都不是很熟悉。后台我这块的代码bug就很少,为此我还感觉很开心,但说实话代码写的效率很低,有些复杂的查询我都没有依赖sql,而是依赖的java代码去处理,速度有些慢。即使到现在我写sql的能力还是很差,做报表是我的一个弱项。但那段时间确实也太紧张了,后期做报表,大概是表设计的不太好,我发现完成一个报表查询十分吃力,要写很多代码很多判断逻辑,到后期维护的时候我就是否头疼了。

        到maibox1.1阶段的时候,相比1.0就轻松了不少,起码周六我们加班就不频繁了,也知道了原来一开始说的这项目很紧张都是领导吓唬人的,当时一个客户都没有,当maibox1.1做完的时候我们才有了第一个客户。当时给客户部署了后说实话真的有一些成就感,但同时又有很多的挑战和压力。尤其是,我的搭档芳哥被调用了。

也就是说接下来的后台开发,基本就靠我一个人了,虽然当时赵伸也调了过来,但当时他还是实习生的身份,我不能安排他太多工作,他也干不了。所以我只能靠我自己了,我当时想我可能又要回到那个加班加点的日子了。事实的确是这样的,我肩负起来了芳哥的重担,还发现了芳哥以前写的代码中的一些bug。最重要的是代码风格不一样,所以维护的成本也加大了。当然这里不是再怪芳哥只是当时确实很难。就这样坚持了3个月,maibox不断的升级,从1.1到1.2,1.3.1.4的时候就很稳定了。这期间我们使用了一些新的技术,还解决了很多问题,我也总结了场馆的一些算法,前端也做了票面设计的工作。还引入了websocket完成一些客户端和服务端的通信工作。这段时间我的确成长了,这些成长不仅仅是技术上的成长,关于管理方面也有提高,我带着这个小组工作,自然受到很多人尊重。

       随后的一些时间系统出现过一些问题,程序猿和产品狗之间偶尔发生一些矛盾和摩擦,程序员之间都会有一些冲突,包括技术上,或者思想上,管理一个团队真的不是说轻而易举的,你需要考虑自己,也需要考虑所有人的感受。由于在maibox中积累的很多的开发经验,在随后的工作里,我表现出了突出的作用,同时也承担了更多的责任。虽然在10月份的时候maibox夭折了(夭折的原因有很多这里不详谈)maibox的稳定版终结在1.4  1.5虽然也开发完成了但之后就没有再开发,虽然maibox停止了开发,但积累了很多的经验对之后开发新的产品提供了很好的支持。

在这期间,我的薪水也涨了,这里要感谢李哥的提拔,虽然李哥现在已经不在本公司,但去了新公司不忘记把我挖过去,但不好意思的是我现在还没有换工作的计划,所以婉拒了,李哥是一个挺牛的人其实,做事风格雷厉风行,我从他的身上学到了很多,包括我现在工作也是做的特别快又特别好是吸取了李哥工作的特点。但缺点也有,前期太早的投入到开发而不是设计中,导致系统在后期的优化升级上会有很多问题。这种设计不只是数据库的设计,还包括产品定位,产品发展的设计等等。跟李哥工作,你必须时刻保持紧张,刚完成一个工作紧接着下一个活又来了,我个人觉得这样不太好,程序员也需要休息,不仅仅是时间上,大脑也需要休息,我是那种对工作很负责人的人,一个活我做不完可能我能不吃饭我喝水,现在我已经在改掉这个习惯,因为我已经结婚了必须好好的照应身体。今天就写这些吧,已经下班了。就不加班了。


推荐阅读
  • 本文对SQL Server系统进行了基本概述,并深入解析了其核心功能。SQL Server不仅提供了强大的数据存储和管理能力,还支持复杂的查询操作和事务处理。通过MyEclipse、SQL Server和Tomcat的集成开发环境,可以高效地构建银行转账系统。在实现过程中,需要确保表单参数与后台代码中的属性值一致,同时在Servlet中处理用户登录验证,以确保系统的安全性和可靠性。 ... [详细]
  • 本文总结了在SQL Server数据库中编写和优化存储过程的经验和技巧,旨在帮助数据库开发人员提升存储过程的性能和可维护性。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 在当今的软件开发领域,分布式技术已成为程序员不可或缺的核心技能之一,尤其在面试中更是考察的重点。无论是小微企业还是大型企业,掌握分布式技术对于提升工作效率和解决实际问题都至关重要。本周的Java架构师实战训练营中,我们深入探讨了Kafka这一高效的分布式消息系统,它不仅支持发布订阅模式,还能在高并发场景下保持高性能和高可靠性。通过实际案例和代码演练,学员们对Kafka的应用有了更加深刻的理解。 ... [详细]
  • 2021年Java开发实战:当前时间戳转换方法详解与实用网址推荐
    在当前的就业市场中,金九银十过后,金三银四也即将到来。本文将分享一些实用的面试技巧和题目,特别是针对正在寻找新工作机会的Java开发者。作者在准备字节跳动的面试过程中积累了丰富的经验,并成功获得了Offer。文中详细介绍了如何将当前时间戳进行转换的方法,并推荐了一些实用的在线资源,帮助读者更好地应对技术面试。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 结城浩(1963年7月出生),日本资深程序员和技术作家,居住在东京武藏野市。他开发了著名的YukiWiki软件,并在杂志上发表了大量程序入门文章和技术翻译作品。结城浩著有30多本关于编程和数学的书籍,其中许多被翻译成英文和韩文。 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • MySQL的查询执行流程涉及多个关键组件,包括连接器、查询缓存、分析器和优化器。在服务层,连接器负责建立与客户端的连接,查询缓存用于存储和检索常用查询结果,以提高性能。分析器则解析SQL语句,生成语法树,而优化器负责选择最优的查询执行计划。这一流程确保了MySQL能够高效地处理各种复杂的查询请求。 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 阿里巴巴终面技术挑战:如何利用 UDP 实现 TCP 功能?
    在阿里巴巴的技术面试中,技术总监曾提出一道关于如何利用 UDP 实现 TCP 功能的问题。当时回答得不够理想,因此事后进行了详细总结。通过与总监的进一步交流,了解到这是一道常见的阿里面试题。面试官的主要目的是考察应聘者对 UDP 和 TCP 在原理上的差异的理解,以及如何通过 UDP 实现类似 TCP 的可靠传输机制。 ... [详细]
  • 全面解析JavaScript代码注释技巧与标准规范
    在Web前端开发中,JavaScript代码的可读性和维护性至关重要。本文将详细介绍如何有效地使用注释来提高代码的可读性,并探讨JavaScript代码注释的最佳实践和标准规范。通过合理的注释,开发者可以更好地理解和维护复杂的代码逻辑,提升团队协作效率。 ... [详细]
  • 回顾过去十多年的开发经历,我在技术能力、培训机会、国际视野以及大型企业的工作经验方面都有了显著的提升。特别是从最初的月薪8k到如今的38k,这一过程中,我深刻体会到系统化学习对提升架构能力的重要性。最初踏入职场时,面对众多未知,我主要依赖团队领导的指导,专注于编写代码、管理数据库和进行测试。随着经验的积累和技术的不断进步,我逐渐意识到,只有通过系统化的学习和实践,才能在技术领域取得更大的突破。 ... [详细]
  • 如何撰写适应变化的高效代码:策略与实践
    编写高质量且适应变化的代码是每位程序员的追求。优质代码的关键在于其可维护性和可扩展性。本文将从面向对象编程的角度出发,探讨实现这一目标的具体策略与实践方法,帮助开发者提升代码效率和灵活性。 ... [详细]
author-avatar
陈晏亚363951
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有