Specifically why run to outsource, can only say that they are too water, or too lazy, are not good to cast resumes, also immersed in this pit, if you want to outsource, unless the money to the market price of more than 1.5 times times, otherwise do not consider.
Project is the first to do communications companies, from the specific needs of the better, not, or from a pit cargo project manager, said the project manager, have to take him, test birth, to bring us this development team, the development team of many Daniel, HW work 5 years + Samsung work 3 years, HW work, ZX Work 8+, ZX work, HW work to retire, specifically do not say, anyway the team's ability undoubtedly, but this project manager completely do not understand the development, do not know what on demand analysis, design, code, self-test, transfer test, even code review do not know, And then still there backseat us, leading us to go blind, win a colleague a word-one will be incompetent, exhausted the armed forces. Although I should not say that the leadership is not good, but still can't help to spit groove. To say the point, starting from the project needs to say, at the end of November told me, December there is a small demand let me do, ask me dare not answer, my character you do not know, there is Mao I dare not answer. Then asked about what to do, about November 30 took their module design documents to see, because not completely contact this piece of communication, coupled with their system is not very familiar, resulting in the following 2 weeks very bitter force. December 1 (Week 4), began to look at their documents, probably looked at twice, then weeks 5 past HW to let them cram, listened to them, and I understand that the business is difficult, it should be said that the business is very simple, should not be anything, and not how to take seriously, and then began to examine their code, Where to prepare to add code, said the heart, probably sent about 5 days (in the morning also to the HW man chores, do log analysis work) code to complete, guilty, because it is a complete new module, my weekend came over code review twice, feel basic no problem, The man who started looking for HW review, and then began to pit a hole.
Forget to say, the coding phase, some uncertain place, mainly the logic of this piece, the new business logic what it is, I wrote the code, sent to the HW people to see, is to determine the business logic has a problem, and then they said no problem. Then Codereview finished, found that the original one Rbtree support the current business, you must add a static tree as a copy of the original static tree structure (just key is not the same), here to record, the original gum Tree1, copy gum Tree2, no problem, Thought change is not a lot, I probably sent an afternoon to add the logic of the tree, and then own review, feel almost, no problem, find them to do the 2nd time review, they look at the next, found business logic or there is a problem, said the tree 2 node can not play so Your tree 2 node corresponding to the tree 1 nodes may be many pairs of 1, must be in the tree node on the head linked list, heard that the first is not happy, but did not show it, because the tree was written at the time I was 1-1 to deal with, they are de, so important information in my code after the completion of said that this is pit me. If it is 1 to 1, basically no problem, but 1 to many, this logic must be big change, I say so important information, you let me a just contact this module people think, anyway is everyone is not happy, if not this problem, I write code, basic 4 small problem (Comment did not delete, Clerical error An array of subscript all write out 0, a byte sequence alignment, there is nothing to remember, but not happy to be unhappy, the heart is not happy, this pit should not be my back, code or to write, in fact, I still like to write code.
Probably spent 1 afternoon plus night, the code is finished, review time also no big problem, just beginning, later to the new change of logic when the Big pit appeared, HW people said you this time complexity and space complexity high, said I did not tell you how to write it, I was directly blindfolded ...
First say the space this, because the node linked list, I directly on the Tree2node to hang a list pointer, and then the different value directly apply for memory to the list add, they say you add this is not what I said Ah, so add a problem, you apply the memory, although very small, But the platform Management memory module will add the system head, you this list if there are 1000 nodes, then you this memory is 1000* (you apply for memory + system header more than 40 bytes), this memory waste is too bad (I am not happy, this I just came to this outsourcing company to do the first project, No one around you have done your stuff, are new colleagues, just formed team); In addition, I remember and you said, if it is a traversal, think can not use list (which he did say), time complexity is too high, I began to feel guilty, this is said, I write performance is not good, I said yes, This code is so written that I play bad, it is my own problem to be brave to admit that this is not a shameful thing. But I think the relationship between the two, this pit I think the next time you write design hope also think more, do not expect a new job soon, just understand your framework, see not your module code and a little do not understand your business people to consider, good spit groove end, the Final Solution, They a Daniel help me to rectify the next, solve.
Say something about it, the data structure is played by their bad, this is true, the tree and linked list, the circulation chain list is really good, the thought is very strong, was the pit so long time, the joint transfer has not begun, the original plan 13th, I took off your hind legs, the heart is still very sorry, although both sides have responsibility, But promised you do not do a good job, the heart is very unhappy, sincere.
Say the technology at the end, their tree node seal is particularly interesting.
typedef struct node_common{ struct common_node *pparent; struct common_node *plson; struct common_node *prson; Color color;} Treenodecommon;typedef struct Person_ node{
int iage; Char sname[(stelnum[);
Treenodecommon*
} person;
such as such a person node, define an entity who xx, they put xx. Pcommon This address is proposed as a key value into the tree or other data structure, so that the tree to find this xx, the first to find this XX. Pcommon Address, it is obvious in the memory offset, you can get the address of XX, or very powerful, sincere.
Growth Diary--the first item recorded in WB.