写点什么

[外企工程师经验]softwere engineering common issue and best practice

作者:极客罗杰
  • 2024-07-08
    上海
  • 本文字数:1534 字

    阅读完需:约 5 分钟

[外企工程师经验]softwere engineering common issue and best practice

BUSINESS

•Technology serves business

•Technology aligns with business

•Technology closely combines with business

NB business e.g. logistics/supply chain, banking, government, travelling etc.

      focus on core business scenarios/core features(code modification)


PRODUCT&SYSTEM

•Technology serves product

•Technology aligns with system

•Technology closely combines with product

NB product e.g. apple iPhone, TenCent WeChat, Casio calculator, Benz car etc.

      focus on core product usage


Development Tool

•ECLIPSE/IDEA/VISUAL STUDIO/NET BEANS/X CODE etc.

•IDE plugins e.g. lombok, clear case, ibatis, tomcat etc.


Issue1: if IDE does not work properly, how to deal with the situation

•Best practice:

•1 check the configuration, environment and version

particularly in a debug mode


BUILD TOOL

•ANT/MAVEN/GRADLE/the GNU COMPILER COLLECTION etc.


Issue1: how to solve depenencies

•Best practices:

•1 refer to official guide

•2 understand the specific build tool

mechanism, configuration

•3 eliminate the possibilities of the IDE's impact

•such as eclipse,  visual studio

•4 watch out the build tool version

such as maven 3.5.4, ant 1.10.9


CONTAINER

Issue1: failing to start a container

•best practices:

•1 understand mechanism

•2 narrow down

a step by step

b root cause

•3 check error logs

Before checking, clean previous error logs and reproduce the issue


FRAMEWORK

•xml/annotation/json/yml configuration

Issue1: throw an exception or report an error when using a framework(particularly resulting in container e.g. tomcat start-up failure)

•best practice:

•1 refer to official guides

maybe not clear or correct or general or incomplete

•2 understand a specific framework

•3 don't be copy cats

•4 start from scratch


CVS(code version control)

•subversion/GIT/clear case

Issue1: how to avoid missing commits

•best practice:

•1 watch out add or commit directories

•2 check source code again


Issue2: how to resolve conflicts(possibly resulting in commit failure)

•best practice:

•1 use the built-in function to resolve conflicts

•2 start from scratch


CACHE

•Independent cache: memorycache/redis/oscache/ehcache etc.

•Built-in cache: mybatis/hibernate/spring/.net/php etc.


Issue1: independent cache inconsistency

•best practice:

•1 understand cache mechanism e.g. redis, memorycached, customized cache(java HashMap)

•2 start from stretch


Issue2: common cache issues

•best practice:

•1 understand and be familiar with these common cache issues

a cache miss

b cache expiration

c cache eviction

d cache black hole

e cache conflict(key)


Deployment

Issue1: what are steps for deployment? 

•Best practice:

•1 follow the steps

•a build a package

install vs. package

•b run a programme/execute scripts

run in background

e.g. database script including create, init, update

b1 & for linux    b2 start /min for windows

•c check a log


Debug

•developing, test and debugging environment debug

•IDE/tool/logging

•with front-end/back-end/db

•intern parties/third parties


Issue1: How to debug in production environment/with third parties?

•Best practice:

•1 logging mechanism

•2 narrowing down

•3 official documents

发布于: 刚刚阅读数: 3
用户头像

极客罗杰

关注

Geek Roger 2021-04-11 加入

一位极客

评论

发布
暂无评论
[外企工程师经验]softwere engineering common issue and best practice_极客罗杰_InfoQ写作社区