Technical Knowledge Summary from 8 Years of IT Experience
After nearly a decade of work in embedded, web, mobile, consulting, and integration projects, the author outlines four major knowledge areas—engineering methods, system integration, project management, and development—detailing essential practices, design principles, and technology stacks such as C, Android, cloud services, and big data.
Reflecting on eight to nine years since graduating, the author has worked on embedded systems, web development, mobile applications, IT consulting, and project integration, and now shares a consolidated technical knowledge map to help newcomers and professionals considering a career transition.
The knowledge is organized into four main categories (see the mind‑map at the end): engineering methods, system integration, project management, and research & development.
Engineering methods : The key challenge is describing requirements using use‑case diagrams, sequence diagrams, and state machines, and understanding them from both user and product perspectives. It also covers functional vs. non‑functional requirements (availability, reliability, testability, serviceability) and emphasizes building a checklist for the team. Software design concepts include structured design (e.g., for microcontrollers) and object‑oriented design, with design patterns treated as best‑practice references.
System integration : This area focuses on integration projects such as smart campuses, smart healthcare, and smart cities, where software is only one component alongside data centers, networks, and specialized equipment. Technical accumulation includes common hardware (servers, storage arrays, firewalls), network segmentation (VLANs, dedicated networks), and typical devices (video surveillance, access control). It also involves deep business consulting, which becomes valuable as experience grows.
Project management : Covers both integration and R&D projects. Management methodologies include Agile and Waterfall, with emphasis on understanding milestones (e.g., requirement‑to‑design, design‑to‑development, development‑to‑testing) and controlling them. Best practices such as continuous integration, stand‑up meetings, code reviews, test‑driven development, and pair programming are highlighted, along with integration‑specific concerns like contracts, bidding, and acceptance.
Research & Development (development) domain : Targeted at developers and divided into embedded, mobile, and web development, with cloud computing and big data mentioned separately.
Embedded development : Primarily uses C; the critical skills are mastering pointers (including function and struct pointers) and understanding the operating system’s process communication, memory management, networking, and file management. Hardware knowledge includes reading schematics, datasheets, and peripheral documentation.
Mobile development : Focuses on Android components, multithreading, storage, and UI design. It also adopts server‑side architectural patterns (IoC, DAO, MVC, MVP) and hybrid approaches, requiring understanding of web‑native interaction and using H5 to achieve near‑native interfaces.
Web development : Encompasses front‑end, back‑end, and databases. Back‑end examples use Java, but the principle applies to other languages: deep language understanding and framework familiarity. Architecture and performance become core as projects scale, with cloud services (load balancers, caching, read/write splitting) simplifying optimization. Relational databases remain mainstream; NoSQL is considered a complementary technology for specific scenarios.
Cloud computing and big data : Covers IaaS and PaaS as foundational infrastructure, SaaS as a software design model, and the Hadoop ecosystem (including Spark and Storm) for distributed computing and columnar storage, noting rapid evolution in this space.
PS: The author acknowledges a software‑centric viewpoint and invites feedback. A mind‑map image is provided for reference, with detailed textual descriptions to be added over time.
Architecture Digest
Focusing on Java backend development, covering application architecture from top-tier internet companies (high availability, high performance, high stability), big data, machine learning, Java architecture, and other popular fields.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.