Roblox Outpost Mars 코딩 테스트: Coding Cookies 블록 코딩 연습

PracHub 영어 원문을 번역한 글입니다영어 원문 읽기

요약

근거를 구분해 정리한 Outpost Mars 준비 가이드입니다. 공식 Coding Cookies 연습을 설명하고, 직접 만든 그리드 예제로 헬퍼 조건, 상태 추적, 경계 테스트를 연습합니다.

Coding Cookies는 Outpost: Mars에서 쓰는 블록 코딩 인터페이스를 위한 Roblox 공식 연습 코스입니다. 먼저 여기서 명령을 조립하고 실행하는 데 익숙해지세요. 그다음에는 더 어려운 능력을 연습합니다. 시작 위치, 입력, 주변 조건이 바뀌어도 작은 프로그램이 제대로 동작하게 만드는 것입니다. Roblox Early Career

블록 프로그램은 깔끔해 보여도 깨지기 쉬운 가정을 품고 있을 수 있습니다. 예를 들어 다음 작업에서는 앞을 보고 있어야 하는데, 헬퍼가 항상 오른쪽으로 도는 경우가 있습니다. 또는 반복문이 마지막 동작 뒤에도 이동해서 로봇이 목표 지점을 한 칸 지나쳐 있게 만드는 경우도 있습니다. 의도적으로 연습하면 이런 실수를 미리 찾아낼 수 있습니다.

이 가이드는 공식 안내, 지원자 후기, 직접 만든 연습 문제를 구분해서 설명합니다. 알고리즘 연습을 보완하려면 PracHub의 Roblox Software Engineer 문제에서 상태, 순회, 경계 조건 추론을 다룬 문제를 풀어 보세요. 이 문제들은 공식 게임과는 별개이며, 여러분의 평가에 나올 문제를 예측한 것이 아닙니다.

로봇 셰프와 시각적 코드 블록을 화성 테마 프로그래밍 과제 준비와 연결한 직접 제작 일러스트.

개념을 보여 주는 일러스트이며, 그림 속 블록 이름은 검증된 평가 명령어 목록이 아닙니다.

Coding Cookies가 대비해 주는 것

공식 사실: Roblox 채용 페이지는 Outpost: Mars 인터페이스 준비용으로 Coding Cookies를 안내합니다. Kaiju Cats는 Robots와 Factories의 기본 게임 인터페이스와 전략 연습용으로 안내합니다. 두 이름은 서로 다른 준비 경로에 해당하므로, 맞는 쪽을 골라야 엉뚱한 조작 방식에 연습 시간을 다 쓰지 않습니다. 공식 연습 안내

공식 링크로 연결된 Coding Cookies 체험은 Assessment Tools가 게시했으며, 로봇 셰프 E.R.N.I.E를 위한 코딩 레시피를 만드는 주방을 배경으로 합니다. 시간 제한이 없고, 점수도 매기지 않으며, 정해진 답이 없는 방식입니다. 설명에도 이곳에서의 활동이 평가 결과에 영향을 주지 않는다고 명시되어 있습니다.

그래서 지원 점수를 신경 쓰지 않고 자유롭게 실험해 볼 수 있는 곳입니다. 다만 주방의 모든 명령, 퍼즐, 풀이가 Mars에 그대로 나온다는 뜻은 아닙니다. 공개된 안내가 확인해 주는 것은 두 인터페이스의 연결이지, 과제 구성이 동일하다는 사실이 아닙니다.

이 글을 쓰면서 공식 링크는 확인했지만, 실제로 배정되는 평가를 직접 플레이해 보지는 않았습니다. 접속 방법과 조작법은 현재 체험에 표시된 안내를 따르세요. 이름이 비슷한 제3자 페이지나 게임 ID가 다른 페이지는 Roblox 공식 채용 페이지의 링크보다 출발점으로 믿을 만하지 않습니다.

지원자 후기가 보여 주는 것

지원자 후기: 2026년 8월의 한 토론에서 어느 지원자는 시뮬레이션 파트에서 여러 함수를 만들었는데, 실제 평가 과제에서 특정 상황에 헬퍼가 실패한다는 것을 뒤늦게 알았다고 설명했습니다. 일부 구간에서는 어쩔 수 없이 드론을 수동으로 한 단계씩 움직였다고 합니다. 이는 한 사람의 경험담이며, 모든 평가 버전의 명세가 아닙니다. 지원자의 함수 디버깅 후기

다른 지원자 후기: 8월의 다른 토론에는 서로 다른 맵 완료 수를 보고한 글과, Mars 맵을 여러 개 완료했다고 밝혔는데도 불합격 통보를 받았다는 지원자의 글이 있습니다. 통제되지 않은 자기 보고 결과이므로, 합격 기준선이나 각 파트의 가중치는 알 수 없습니다. Roblox OA 토론

여기서 준비에 도움이 되는 추론은 제한적입니다. 한 번 성공한 헬퍼도 눈에 띄지 않는 시작 조건에 의존하고 있을 수 있다는 점입니다. 재사용과 테스트를 연습해 둘 만합니다. 반면 맵 개수, 타이머, 블록 구성, 최적의 함수 라이브러리를 단정할 만큼 근거가 충분하지는 않습니다.

운영 관련 세부 사항은 받은 초대장과 배정된 안내문을 기준으로 확인하세요. 다른 사람이 과제를 푼 경로를 모든 지원자에게 통하는 공략법으로 일반화하지 마세요.

먼저 블록이 실제로 무엇을 하는지 알아보세요

아래 내용은 직접 정리한 연습 조언이며, Coding Cookies의 튜토리얼 순서라고 주장하는 것이 아닙니다. 공식 연습 체험에서 쓸 수 있는 동작을 이용해 그 동작이 어떻게 작동하는지 직접 확인하세요.

결과를 예측할 수 있는 아주 작은 시퀀스로 시작합니다. 동작 하나를 실행해 결과를 관찰한 뒤, 동작 두 개를 조합하세요. 더 긴 레시피를 만들기 전에 무엇이 먼저 실행되는지, 그리고 블록이 어디에 붙고 어디에 중첩되는지 인터페이스에 표시되는지 확인합니다. 시각적으로 붙어 있는 블록이 의도한 시퀀스에 속하지 않을 수도 있습니다.

세 가지 질문을 구분하세요. 명령이 무슨 뜻인지, 언제 실행되는지, 무엇을 바꾸는지입니다. 블록이 위치나 자원을 바꾼다면 그 변화도 머릿속 모델에 포함시키세요. 명령이 반복된다면 동작 하나가 반복되는지, 중첩된 묶음 전체가 반복되는지 따져 봅니다. 익숙해 보이는 블록이 다른 프로그래밍 도구의 문법과 똑같이 동작한다고 가정하지 마세요.

짧은 시퀀스가 동작하면, 체험에서 허용되는 범위에서 입력이나 시작 조건 하나를 바꿔 보세요. 실행하기 전에 새 결과를 예측합니다. 이렇게 하면 외운 배치를 반복하는 능력이 아니라 이해도를 확인할 수 있습니다.

Python이나 JavaScript를 이미 안다면, 인터페이스에 익숙해지는 일을 대수롭지 않게 여기지 마세요. 목표는 블록 선택, 중첩, 실행 순서 때문에 생기는 실수를 줄여서, 다른 에디터에서도 프로그래밍 지식을 그대로 활용하는 것입니다. 이 연습 경로의 전제 조건으로 Roblox Studio나 Luau 학습이 필요하다는 근거는 위 자료들에서 확인할 수 없습니다.

재사용 헬퍼마다 시작 조건과 종료 조건을 정하세요

헬퍼의 이름만으로는 충분하지 않습니다. "한 줄 만들기"라는 이름만으로는 타일 배치를 어디서 시작하는지, 어느 방향으로 진행하는지, 에이전트가 어디서 끝나는지 알 수 없습니다. 이런 세부 사항에 따라 이후에 다른 헬퍼를 안전하게 실행할 수 있는지가 결정됩니다.

직접 만든 연습 문제: 현재 칸에 타일을 놓고 한 칸 앞으로 이동할 수 있는 로버가 있는 종이 그리드를 상상해 보세요. 타일을 놓아도 로버는 움직이지 않습니다. 동쪽은 x가 증가하는 방향, 북쪽은 y가 증가하는 방향으로 정합니다. 이는 설명을 위해 만든 가상의 모델이며, Roblox의 명령 이름이나 좌표계에 관한 주장이 아닙니다.

양의 정수 n에 대해 BUILD_ROW(n)을 정의합니다. 시작 칸을 포함해 타일을 정확히 n개 놓고, 방향을 바꾸지 않은 채 마지막 타일 위에서 끝나야 합니다. 필요한 칸이 비어 있고 연습에서 타일이 충분히 주어진다고 가정합니다. 이런 가정이 알아서 성립하기를 막연히 바라지 말고 명시적으로 적어 두세요.

개념적으로 올바른 시퀀스는 다음과 같습니다.

BUILD_ROW(n), for n >= 1:
    PLACE
    REPEAT n - 1 TIMES:
        MOVE_FORWARD
        PLACE

이것은 종이 위에서 추적해 볼 수 있는 의사 블록이며, Coding Cookies에 입력하라는 지시가 아닙니다. 이 아이디어를 허용된 에디터에 적용한다면, 실제로 제공되는 동작과 문서화된 동작 방식을 사용하세요.

흔한 대안인 PLACE; MOVE_FORWARD를 정확히 n번 반복하는 방식은 같은 수의 타일을 놓지만 한 칸 너무 앞에서 끝납니다. 눈에 보이는 배치 결과는 맞아 보여도, 종료 상태가 다음 동작을 망가뜨립니다.

더 큰 풀이를 만들기 전에 가장 작은 예제부터 추적하세요

이 예시 규칙에 따라 (0,0)에서 동쪽을 보고 시작해 BUILD_ROW(3)을 호출합니다. 곧바로 최종 그림으로 건너뛰지 마세요. 각 동작 뒤에 무엇이 바뀌는지 기록하세요.

단계동작로버 위치지금까지 놓은 타일
시작없음(0,0)없음
1놓기(0,0)(0,0)
2앞으로 이동(1,0)(0,0)
3놓기(1,0)(0,0), (1,0)
4앞으로 이동(2,0)(0,0), (1,0)
5놓기(2,0)(0,0), (1,0), (2,0)

결과는 타일 3개 놓기와 이동 2번입니다. 방향은 계속 동쪽입니다. 이런 사실은 부수적인 애니메이션 정보가 아니라 답의 일부입니다.

이제 바로 이어서 헬퍼를 다시 호출한다고 생각해 보세요. 헬퍼는 이전 호출이 끝난 타일에서 시작하므로, 두 호출은 그 칸에서 겹칩니다. 타일을 중복해서 놓지 않고 이어서 확장하려면, 호출하는 쪽에서 먼저 다음 칸으로 이동해야 합니다. 물론 그 이동이 가능하다는 전제가 있습니다. 개별적으로는 맞는 헬퍼를 조합해도 잘못된 프로그램이 나올 수 있는 이유를 보여 줍니다.

시작 상태, 이동 2번과 타일 3개 놓기, 동쪽을 향한 최종 위치를 보여 주는 직접 제작한 예시 헬퍼 조건 도식.

한 번의 성공이 가릴 수 있는 가정을 테스트하세요

이 연습에서는 n = 1이 특히 많은 것을 드러냅니다. 로버는 한 번 놓고 전혀 움직이지 않아야 합니다. 불필요한 마지막 이동은 큰 맵에 가려지지 않아서 바로 눈에 띕니다.

다음으로 n = 2를 시도하고, 시작 위치와 방향을 바꿔 보세요. (4,2)에서 북쪽을 보고 n = 3으로 시작하면, 우리가 정한 좌표 규칙에서는 (4,4)에서 북쪽을 본 채 끝나야 합니다. 구현이 대신 동쪽으로 간다면, "앞"을 고정된 세계 방향과 혼동한 것입니다.

조건의 한계도 테스트하세요. 이 헬퍼는 일부러 양의 정수만 받습니다. 길이 0 요청은 별도로 결정해야 합니다. 거부할지, 아무 일도 하지 않는 새로운 경우로 정의할지입니다. 실수로 들어온 음수 반복 횟수가 동작을 결정하게 두지 마세요. 마찬가지로, 필요한 칸이 막혀 있다면 경로가 비어 있다는 가정을 어긴 것이며, 이 단순한 헬퍼가 몰래 해결해 주는 경우가 아닙니다.

더 큰 시퀀스가 실패하면, 예측과 처음으로 달라진 상태를 찾으세요. 헬퍼가 시작하기 전에 이미 로버가 엉뚱한 방향을 보고 있다면 호출하는 쪽을 살펴봅니다. 시작 상태는 맞는데 첫 이동이 틀렸다면 그 헬퍼의 명령 동작 방식을 살펴봅니다. 전체 시퀀스를 통째로 바꾸는 것보다 이렇게 경계에서 디버깅하는 편이 훨씬 많은 정보를 줍니다.

따라서 짧은 테스트 세트는 길이, 시작 위치, 방향, 명시한 사전 조건의 성립 여부를 달리해야 합니다. 깨지기 쉬운 추상화를 드러내기 위해 비공개 평가 맵을 흉내 낼 필요는 없습니다.

간결하게 만들기 전에 먼저 정확하게 만드세요

직접 정리한 준비 조언: 정확성과 효율성은 별개의 질문으로 다루세요. 먼저 프로그램이 과제에서 요구하는 일을 하는지 확인합니다. 그다음에 결과와 이후 단계가 기대하는 상태를 바꾸지 않으면서 줄일 수 있는 반복 작업이 무엇인지 따져 봅니다.

이 한 줄 만들기 연습에서 반복 블록을 쓰면 프로그램을 더 짧게 표현할 수 있지만, 필요한 타일 놓기 횟수가 줄어들지는 않습니다. 헬퍼는 가독성과 재사용성을 높여 주지만 실행되는 동작 수는 그대로입니다. "눈에 보이는 블록이 적다"와 "수행하는 작업이 적다"는 서로 다른 측정값입니다.

실제 과제에 효율성 지표가 표시된다면, 그것이 무엇을 세는지 읽어 보세요. 가장 짧아 보이는 프로그램, 가장 큰 함수 라이브러리, 가장 많이 완료한 연습 레시피에 보상을 준다고 가정하지 마세요. 공개적으로 검토할 수 있는 자료만으로는 Mars 전체에 적용되는 채점 공식을 확인할 수 없습니다.

도구가 허용한다면 대대적인 리팩터링에 들어가기 전에 동작하는 버전을 따로 보관하세요. 수정한 뒤에는 가장 작은 경우와 시작 조건을 바꾼 경우를 다시 실행합니다. 다른 동작이 호출했을 때 어떻게 움직일지 더 이상 예측할 수 없다면, 아무리 영리한 범용 헬퍼도 개선이 아닙니다.

연습 세션을 마무리하기에 좋은 기준

모든 실험이 성공할 때까지 계속 연습할 필요는 없습니다. 더 유용한 마무리 기준은 짧은 시퀀스를 설명하고, 그 가정을 짚어 내고, 실행 전에 조건 하나만 바꾼 경우의 결과를 예측할 수 있는 상태입니다.

마지막으로 고친 부분을 네 문장으로 설명해 보세요. 의도한 것, 실제로 일어난 일, 틀렸던 가정, 바꾼 내용입니다. 이 예제라면 마지막 타일을 놓은 뒤에 이동이 한 번 더 있었던 경우가 해당합니다. 실제 연습 세션을 돌아볼 때는 직접 관찰한 자신의 실수를 사용하세요.

배정된 파트를 시작하기 전에 안내문과 시간 정보를 읽으세요. Roblox 채용 페이지에 따르면 평가는 한꺼번에 또는 일주일에 걸쳐 나눠 완료할 수 있지만, 이것이 파트의 타이머가 시작된 뒤에 일시 정지해도 된다는 뜻은 아닙니다. 접속 문제나 기한 연장 요청은 공식 평가 페이지의 지원 창구를 이용하세요.

블록 프로그램 추론을 위한 보완 연습 문제 5개

이 PracHub 문제들은 다른 곳에도 적용되는 코딩 개념을 훈련합니다. Coding Cookies를 재현하거나 Mars 레이아웃을 알려 주거나 여러분의 면접을 예측하지는 않습니다. 이 세트에는 Software Engineer 문제와 인접한 Machine Learning Engineer 기록이 함께 들어 있으며, Mars 문제 모음이라는 증거가 아니라 상태와 경계 조건 추론을 위해 골랐습니다.

PracHub 문제집중해서 연습하는 방법
Simulate robot path and detect boundedness위치와 방향을 모두 추적하고, 명령이 반복될 때 왜 완전한 상태가 중요한지 설명해 보세요.
Can the character reach the destination?장애물과 그리드 가장자리를 포함해, 가능한 전이와 원하는 목적지를 구분하세요.
Level-Ordered Dependency Build Order동작을 실행하기 전에 어떤 선행 조건이 성립해야 하는지 명시하세요.
Find Windows Containing a Target범위 한가운데 예제에만 의존하지 말고, 양 끝을 포함하는 구간과 겹치는 범위를 테스트하세요.
Implement a Rolling-Window Rate Limiter경계 조건을 명시하고, 상태가 유효 범위에 들어오거나 벗어나는 순간을 테스트하세요.

문제 하나를 골라 구현하기 전에 가장 작고 쓸모 있는 테스트부터 작성해 보세요. 그 습관을 공식 블록 코딩 연습에도 가져가세요. 작고 예측 가능한 예제가 긴 프로그램이 어떤 가정을 깔고 있는지 알아내는 가장 빠른 방법일 때가 많습니다.

출처 및 추가 자료

Roblox 면접 문제 풀어보기

Roblox 면접 문제 풀어보기