다음 취업하자 ! 정리

- 자바

- RDBMS

- 빅데이터

- 리눅스 숙련

- 웹기술

- 모바일 

네이버 취업하자 ! 정리


다음과 유사하지만 원하는 것이 더욱 많음 ....




느낀점


신입에게는 어려울 수 있겠지만 


목표를 가지고 해당 기술을 정리하면서 지속해서 배워나간다면 좋은 길이 있을 것입니다.


네이버 >> 다음

About me ?


전 현재 지금 배워놓은 기술력이면 네이버 쇼핑 플랫폼 정도 지원해 볼 수 있겠네요 ... ;;


ok >>>


웹개발 3~9 / 자바 중급 이상 / 스프링 웹앱 3년 이상 / 리눅스 웹서버 운영경험

웹기술 jquery, angularjs, react

elasticSearch, jpa, hibernate, 대용량 DB처리, MQ서비스


not ok >>>


solar, hadoop, spark, 글로벌 서비스


그래도 4개는 안해본거 -_-;


솔직히 이렇게 많이 알아야 되나 하는 의구심은 들지만.... 그런 인제를 뽑네요



회사별 필요로하는 프로그래밍 기술


( Mind Map 을 통해 그려 봤습니다. / 확대하면 좀 더 크게 보실 수 있습니다.)



일단 주저리로 적구 나머진 좀 차후 시간되면 정리 하도록 함


1. 웹 화면

> JQuery 로 구성

> 고려사항

동적으로 업로드 컴포넌트를 처리 할 수 있도록 구현 해주면 됨. (나머진 서블릿에서 처리해줌 )

> 구현 : 첨부 내용 참조 -> 일단 단순하게 처리는 해 놓음. 추가 요건이 있음 구현 해야 겠음.

2. 서블릿 

> Spring 기반에서 Apache Commons Upload (이하 ACU로 지칭)를 사용하여 업로드 화면을 구현

> 고려사항

사이즈 : 총 DISK , 개별파일, 한번에 업로드 할 수 있는 크기 제한

DB 구성 : 업로드 전용 테이블 구성 & 추가적으로 UNIKEY를 활용하여 JOIN 하여 타 테이블에서 해당 파일을 손쉽게 사용하도록 처리.

기타 등등 필요한거 있음 고려하기

> 구현 : ACU 에서 샘플을 참조하여 처리 -> 해보니깐 쉬움 ㅋㅋ

http://java.decompiler.free.fr/jd-eclipse/update/

를 통하여 인스톨 하면 됩니다 ... ^^
[지디넷코리아]대신증권의 차세대시스템 개통 이후 2개월이 지났다. 대신증권 차세대시스템은 증권업계 최초로 주문체결을 제외한 전 영역을 기업용 자바 모듈(J2EE) 기반으로 구현, 화제를 모았다.

 

대신증권 이전 차세대시스템을 개발한 증권사는 물론이고 이후 개발에 착수한 증권사도 자바는 '속도가 느리다', '검증이 안됐다'는 이유로 쉽사리 J2EE를 채택하지 못하고 있다.

 

8일 대신증권 김병철 상무는 그러나 "지금까지는 자바로 구현한 기능도 만족할만한 속도가 나고 있다"고 말했다.

 

김 상무는 "자바를 기반으로 개발한다고 하자 증권업계 뿐만 아니라 IT업계까지 우려가 있었단 것을 알고 있다"며 "하지만 자바가 매년 배 이상이 성능향상을 보이고 있으며 대신증권에서도 만족할 만한 성능을 보였다"고 강조했다.

 

대신증권은 주문조회 기반이 자바다. 주문조회는 체결만큼은 아니지만 속도가 중요하다. 시세정보를 실시간으로 확인하지 못하면 주문을 할 때 손해를 볼 수 있다는 견해다.

 

웹트레이딩시스템(WTS)이 홈트레이딩시스템(HTS)에 비해 많이 사용되지 않는 이유 중 하나도 조회화면의 속도 때문이란 분석도 있다.

 

대신증권은 주문조회 속도가 이전 시스템에 비해 2배 이상 빨라졌다고 강조하고 있다.

 

김 상무는 "자바를 기반으로 시스템을 구현했을 때 속도가 느리다는 것은 아마도 구현해보지 않았기 때문일 것"이라고 말했다. 예상했던 것보다는 훨씬 만족스럽게 결론이 났다.

 

김 상무는 "컴포넌트 기반의 자바로 시스템을 구현한 이후 개발속도가 오히려 빨라질 것"이라며 "조만간 출시할 HTS 등에서도 톡톡히 효과를 볼 것"이라고 설명했다.

 

대 신증권은 차세대시스템 개발 끝내고 안정화 기간 3개월을 거치기도 전에 HTS 차기 버전 등 그동안 미뤄왔던 프로젝트에 착수한다. 이외에도 대신증권은 자본시장통합법에 대응한 소액결제, 선물시스템과 컴플라이언스에 대응하는 국제회계기준(IFRS)시스템 등도 구축한다.

 

특히 이번달부터는 기획부터 시작할 차기HTS는 대신증권이 2년마다 대폭 손질해 내놓는 HTS다. 대신증권은 그동안 차기HTS를 개발할 때 6개월 이상의 시간을 들였다.

 

김 상무는 "서비스 지향 아키텍처(SOA) 사상을 채용한 자바 기반의 시스템으로 기존 개발에 걸렸던 4~5개월의 기간을 2개월 이내로 단축할 수 있을 것"이라고 말했다.
서버 : 자바 -> 받는 것만 됨
클라 : 플렉스 -> 받는거 보내는거 다됨

기억이 가물 가물해서 자바는 소스가 좀 ;; 크라이언트 소켓 테스트 하는데는 문제 없으므로 테스트용으로 사용하세요. -_-;

 import java.net.*;

import java.io.*;


//테스트용임 .....  


public class TestServer extends Thread{
    private BufferedReader recv_msg = null;
    private Socket soc = null;
    
    public TestServer(){
        ServerSocket server = null;
        try {
            server = new ServerSocket (300);
        } catch (IOException e1) {
            e1.printStackTrace();
        }

        System.out.println ("Server Running");
        
        
        
        while (true) {

            try{
                soc = server.accept();
                System.out.println(soc.toString());
                recv_msg = new BufferedReader(new InputStreamReader(soc.getInputStream()));                
                recv_message rm = new recv_message();
                rm.start();                
            }catch (Exception e) {
                e.printStackTrace();
            }            
        }
        
    }

    public class recv_message extends Thread{
        public void run(){
            while(true){
                if(soc==null) return;
                try {
                    String msg = recv_msg.readLine().trim();
                    System.out.println("size : ["+msg.length()+"]"+msg.trim());
                    if(msg.equals("exit")){
                        System.out.println("종료");
                        soc.close();
                        soc=null;                                        
                    }
                } catch (Exception e) {                    
                    e.printStackTrace();
                }



                try{
                    Thread.sleep(200);
                }catch(Exception e){
                    
                }
                
            }
        }
    }
    
    
    public static void main (String args[]) throws Exception{
        new TestServer();
    }
}


 <?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
    <mx:Script>
        <![CDATA[
            import mx.formatters.SwitchSymbolFormatter;
            import mx.controls.Alert;      
            import flash.net.Socket;
           
            public var m_socket:Socket = new Socket();
           
            public function connect():void{
                if(m_socket.connected == false){
                    trace("연결 : 연결시도");
                    m_socket.connect("localhost", 300);
                    m_socket.addEventListener(ProgressEvent.SOCKET_DATA,rcvHandler);
                    m_socket.addEventListener(IOErrorEvent.IO_ERROR,ioHandler);
                }else{
                    trace("연결 : 이미 연결되어 있음.");
                }
            }
           
            public function close():void{
                if(m_socket.connected == true){
                    trace("종료 : 연결을 종료 합니다.");
                    m_socket.writeUTFBytes("exit\n");
                    m_socket.flush();
                    m_socket.close();
                }else{
                    trace("종료 : 연결되어 있지 않음.");
                }
            }
           
            public function sendData():void
            {
                if(m_socket.connected == true)
                {
                    var bytes:ByteArray = new ByteArray();
                    bytes.writeUTFBytes(txtData.text+"\n");
                    bytes.position = 0;
                    
                    m_socket.writeBytes(bytes,0,bytes.length);
                    trace("메시지 : "+txtData.text);
                    m_socket.flush();
//                    m_socket.writeUTFBytes( txtData.text);
                    
                    txtData.text = "";
                }
                else
                {
                    Alert.show("연결되지 않았음");
                }
            }
            
            private function sndMsg(evt:KeyboardEvent):void{
                switch(evt.keyCode){
                    case Keyboard.ENTER:
                        sendData();
                    break;
                }
            }
            
            private function ioHandler(evt:IOErrorEvent):void{
                trace("io error");
            }
            
            private function rcvHandler(evt:ProgressEvent):void{
                trace("socketDataHandler: " + evt);
                readResponse();
            }
            
            private function readResponse():void{
                var str:String = m_socket.readUTFBytes(m_socket.bytesAvailable);
                txtRead.text += str;
            }
           
        ]]>
    </mx:Script>
    <mx:VBox width="237" height="138">
        <mx:HBox>
            <mx:Button label="connect" click="connect()"/>           
            <mx:Button label="close" click="close()" />
        </mx:HBox>

        <mx:HBox>
            <mx:TextInput id="txtData" keyDown="sndMsg(event)"/>
            <mx:Button label="send" click="sendData()"/>       
        </mx:HBox>       
        <mx:TextArea width="100%" height="100%" id="txtRead"/>
    </mx:VBox>
</mx:Application>


+ Recent posts