Talk about software development experience from 60 program delivery
Software system development consultant: https://consult.revtel.tech/
Looking back, Xinlv Technology has produced more than 60 software solutions since its establishment in 2016.
Review past cooperation content
- Scale from overseas unicorns to local startups
- Content ranges from projects, products to business topics
- Technologies include Web, APP, IoT and Systems
- Covering many fields such as e-commerce, logistics, medical care, finance, exhibition, printing and so on
- Division of labor from pure consultation, partial cooperation, complete development to follow-up maintenance and operation
- In addition to development and consulting, also assist in team formation
If you take a closer look, there are quite a lot of aspects. It seems that you can share and exchange these parts in the future. But one thing always comes to mind, what are we doing in these developments?
The development of application software is to capture the operation logic of things
After leaving the society, I have experienced large companies, new startups, and started my own business. I can't help thinking about what the past training has given me. Only in the past few years have I vaguely felt that the training in software engineering has given me an operation to dismantle the logic of reality. Knife.
The software system re-simulates the processes that take place in the real world and meets the real needs in the virtual world on the computer side. For example, the system of hotel housing inquiry can be imagined as a virtual assistant at the other end to look up the table for you, and the previous development process is to help the assistant create his own tools (such as record books, etc.).
The interesting point is that since the process is reconstructed in the virtual world, the constraints from the real world can be reduced to a certain extent . Taking the housing virtual assistant just now as an example, the staff in the museum can directly interact with customers to improve efficiency within a controllable range, but in real life, this cannot be implemented due to politics, organizational structure or various risk considerations.
Considering " system = human + software ", this will be a continuous and repeated thinking process of pulling away and getting closer. The test lies in how to properly grasp the level of abstraction and the depth of implementation. And there is almost always only the current best solution and not necessarily a global optimum .
At the end of the crossbow, it is impossible to wear Lu Zhan
As a designer, do you often feel that your experience with certain famous products is not good? For example, the alignment is misaligned or important functions are placed in hard-to-find places.
As an engineer, do you often feel that some well-known services have bugs or lack of smoothness? For example, the smoothness of the push of the foreground background or the strange dead state.
Thinking in another context, do you often feel that the remarks of many politicians or the decisions of big companies are absurd and out of touch with reality? But understand it this way, if something is not what we think it is, unless it is absolutely certain that we are better than the collective intelligence of those teams, it is most likely that we are not seeing the real nature of the problem and the situation. objective constraints .
At the end of the strong arrow, it is impossible to wear Lu Zhan. The real challenge is where it is beyond one's ability, and the focus should be on how to grasp the key issues of each period. Of course, how to see through the real limitations will also be an eternal issue.
Try to understand your own limitations
For modern people who are accustomed to absorbing a lot of information, it is not too difficult to access information from multiple channels (instead, filtering has become an issue!). Imagine how the previous generation viewed us absorbing information from multiple channels (such as Line, Facebook) at the same time, and you can roughly feel that there is a certain era ceiling in the way of information management.
Be very careful to be aware of the hidden limits of your cognition, as the framework not only shapes your worldview but also acts as a brake on your progress.
This hidden ceiling is often not just a blind spot, but more likely the loss of an entire dimension.
What really matters is controllability
So how do you think about real-world software system design?
Think back to the syllabus issues that have often been debated over the years. In our past learning experience, the syllabus was revised by the competent authority at regular intervals, and then major publishers filled in the content according to the syllabus. Based on this framework, we can relatively clearly discuss whether the general direction is incorrect or the specific implementation is problematic.
The same goes for software development.
The top-down framework can be used as a direction guide for the total coverage to a large extent (there will be many methodologies here, let’s not talk about it for the time being). By locking the two dimensions of business needs and business schedule, it can effectively avoid going in the wrong direction.
After all, software development is a dynamic two-way process, so don't forget bottom-up feedback. Using this feedback to lock the dimension of implementation correction can effectively avoid the dilemma of taking the wrong path even though the direction is right.
It's all about controllability. If the development schedule can be grasped at the macro and micro scales, the risk will naturally be reduced.
don't stop
In the end, what I have to tell myself is the old saying of not stopping . There is always too little knowledge and too much possibility.
The absurd remarks throughout the article also come from some bitter tears. If you have different views, please feel free to share with me :)
Like my work? Don't forget to support and clap, let me know that you are with me on the road of creation. Keep this enthusiasm together!