has done so many years of embedded hardware and software development, used a lot of platforms, a few, I was startled, 51 single-chip microcomputer, AVR Mega128, EMC microcontroller, CPLD/FPGA, DSP (LF2407) , s3c2410, 44b0, STM32, etc., software platform has Keil C51, assembly, ADS1.2, MDK, UCOS, Linux, VC + + and so on. There is no way to work in a small company is to have a person to do a few people's work. Many times, go to a new company, not to decide what kind of cpu/software platform to choose, mainly each company has its product platform, and may have been used in a large number of existing products, it is impossible to say that you want to change, only the use of the original development platform, this will reduce the risk. In addition, after two or three years in a company, there will always be colleagues leaving, and he developed the product must be someone to continue to engage in, this is a small company's usual scene. Even if it is a newly developed product, if there is not enough time to verify the reliability of each module, there is a very large risk, this is a lot of college students do not notice this, the higher performance of the hardware and software platform can immediately solve the company's existing problems, that is unrealistic ideas. I used to work in the previous company, I have seen a product group of developers have done such products, several graduate not long after the graduate student to the boss suggested the development of a new type of Control Panel and PC-side backend Server software, the hardware architecture is s3c2410+linux operating system, and to expand the multi-channel serial port, Multi-channel high-precision A/D conversion, multi-input output (on board also has the control ac220v relay). Server background in C # development, database with Oracle, most of the original technology to subvert the technical architecture, and this product is ready to be used in a more important project. The original company also do similar projects, the practice is to use a number of different control boards, a single-chip control board, there is also a STM32 control board, but also has a PLC and touch screen, background server with VC6.0 development, database SQL Server, the old system does not appear on the surface of ARM9 platform integration so high, C #也比VC6.0 easy to use, but a little original system used very stable, the customer did not complain a lot of problems. And those colleagues at once the whole system has been changed, although a piece of arm motherboard to complete the original function of several boards, the production costs can be reduced a lot, but you know, integration of this many features actually contain more risks, the likelihood of success is very low. This is not only technical problems, but also engineering problems, such as new components procurement, sample commissioning, reliability testing, production arrangements, almost let the entire company's operating chain involved, you say you can reduce production costs in the short term?
At that time, I just applied for the job, as a new engineer, but also embarrassed to veto the other people's plans, after all, they get the boss's support and recognition. New recruits only a few days, always can not be a job to give others to be useless. I was just giving them a piece of advice, it's best to do the various functional modules and then decide whether to do that after the test is stable, but they obviously don't have a cold on my advice. In fact, I had already felt that this kind of practice must be dead, almost no link can control risk, do product is not played the Development Board of the demo can be easy to do, even if the Linux porting, drive, application all can make clear, distance a product still have a lot of work to do. As a result, the product was eight months old and could not provide a complete sample to test testers, let alone production. The boss saw that it had been unable to deliver on time and had to stop the development. Calculate one, three people develop eight months, Labor and company share in each employee's cost, (8k/month) * 8 months, plus other expenses about 25~30 million. Big companies may not care about these pennies, but for a small company of fifty or sixty people, there is no way to support development. Finally, the three of them had to resign. Such consumption is not a benefit to the developer or the company, it is best not to do such a foolish thing.
summed up more than 10 years to develop a variety of products, can make the company made a lot of money is actually used 51 single-chip control panel. In fact, from the company's point of view, the product can make money does not depend on the use of how difficult the technology. Years ago, I was in a bicycle factory, saw a special automatic installation and tension network cable automation equipment, its main control board or with 80C31 do CPU, external expansion of LCD screen, there are many other expansion boards, and the machine is sold to millions of yuan, the domestic no manufacturers to do its reliability, This manufacturer is one of the most famous automation equipment suppliers in the bicycle industry in Europe. Therefore, the product does not have to use ARM9 or multicore CPU to get it done.
Among my classmates and friends, there are many engaged in electronics, software, and the richest is a special transformer after graduation, you say this thing has what technical content? There is no technical content, but he now has at least a few sets of large houses in Shenzhen. All along, I think my programming is a good master, but the income than my classmate is simply unworthy. So, don't think you are proficient in Java, or proficient in C + +, or proficient in the development of smart phone applications, or proficient in the Linux kernel, think of their cattle b, in the eyes of others, we and the construction site carrying cement a bird-like, don't take yourself as a root onion!
Technology Life nine: What kind of technology can make money