So You Want to Be a Programmer? A career-preparation guide from www.dpstelecom.com 1-800-622-3314
We protect your network like your business depends on it TM
Last Revised June 17, 2014 Copyright 2014 DPS Telecom All rights reserved, including the right to reproduce this guide or portions thereof in any form without written permission from DPS Telecom. For Information, please write to DPS Telecom 4955 E. Yale Ave., Fresno, CA 93727-1523 Call: 1-800-622-3314 Email: info@dpstele.com Printed in the U.S.A.
Table of Contents So who is DPS Telecom and what do they do?... 5 Working for DPS Telecom... 6 Keil Programming Challenge: Overview... 7 Keil Programming Challenge: Start Up Guide... 8
So who is DPS Telecom and what do they do? DPS Telecom designs and manufactures and sells Network monitoring equipment for communications networks all over the world. The companies we serve include large and small cell phone and land line companies, power companies, government agencies, railroads, subways, and more. DPS was founded in Fresno CA in 1986 by 3 engineers who built the company from the ground up. DPS Telecom was designed to be a vertically integrated company, which means every product is designed, built, tested and documented here at DPS Telecom s Fresno campus. We do everything from designing the PC boards, writing the software, fabricating the equipment chassis, placing components on the PC Boards and marketing and selling our product. Working for a vertically integrated company means that you get to see the product you help develop be made into an actual product that ships out our door to our client! So How does Network Monitoring Equipment work? DPS products allow network operators to verify that all their equipment at a remote site is in good running order and if there is ever a failure or outage at a site our equipment will notify them of the problem. If anything goes wrong at a remote site (ie failure or outage), DPS Telecom s units will collect and send out an alarm signal to the network operator with a description of the problem. With that information the network operator can then make repair decision and act on it as quickly as possible. Overall, we help companies react to changing conditions in their networks to prevent outages. Below is a visual representation of how network monitoring works. A failure/ outage occurs at a remote Site. A DPS unit collects the alarm signal regarding the failure/ outage and sends it to the Network Operator. The Network Operator is notified of the alarm signal and makes repairs as necessary to restore service at the site.
Working for DPS Telecom If you want more from life than a 9-to-5 job, DPS Telecom will give you tough challenges, high expectations, and exceptional opportunities. We hire only potential leaders who want to excel from Day One. We can teach you basic leadership and trade skills we're looking for people with the drive and desire to succeed. DPS Telecom provides excellent career opportunities for new graduates and current students or qualified applicants looking for a long term career. Apply the knowledge and skills you acquired to a rewarding career at DPS Telecom. DPS Telecom is an equal opportunity employer and offers competitive salaries and first-class benefits, including health, vision, dental, life insurance, employee carwash program, and an employer 401(k) plan. This is your chance to join the team that protects the world s networks. DPS Telecom creates technology that supports essential modern communications the landline and cellular phone networks, the Internet, and 911 service. DPS Telecom products guarantee the reliability of telecommunications networks on all seven continents. Your work here will literally help millions of people. Join a world-class, career-building company without leaving Fresno. At DPS Telecom, you'll work for a highly respected, industry-leading company and solve problems for national and global clients. Why DPS is a Great Place to Work? We asked our staff and this is what they had to say: This is a great introductory position. As an office support employee, you will be introduced to a variety of jobs within all aspects of the company. This position offers a lot of opportunity for you to grow and expand your business skill set. -RAM, Office Support Manager My current position with DPS Telecom has given me the opportunity to grow as an engineering professional. The work environment here is exceptional. But what I enjoy the most is the diversity of the projects I work on, on a daily basis. - RM, Engineering Tech
Keil Programming Challenge: Overview Overview: You will create a simple program in C using the KEIL IDE and C51 compiler. 1. Download the Keil s C51 Eval software (Keil uvision2) from the following link if you do not already have it: http://www.dpstele.com/jobs/support/ek51v720.exe 2. Install Keil C51 Eval software. Refer to the Keil Startup guide (on the following page) on how to create a new project and how to compile or use one of the included example programs as a template. (The startup guide and two example projects are included in the following archive http://www.dpstele.com/jobs/support/eng_examples.zip) Watch your code size. The demo has a 2000 byte limit. 3. Running in the uvision2 Debugger, the program receives a sentence from the user. a. Output a user prompt. b. User types in a free form sentence and presses ENTER. 4. When the user presses ENTER, the program performs the following: Note: Please do not use the strtok() function. a. Redisplay the sentence as typed. b. Reverse the order of each word in the sentence. i. Smart Label Printer will become Printer Label Smart c. Alphabetically sort each word in the sentence. i. Smart Label Printer will become amrst abell einprrt 5. Type a brief summary on how to run your program, and what to expect. Provide an example of what output you would expect from your program given certain input. 6. What parts of this project did you find easy? 7. What parts of this project did you find challenging? 8. How much time did you spend on this project? What were the most time consuming parts of the project? Knowing what you know now, how long would a similar assignment take you to complete? 9. Zip and Email your entire project directory to DPS Telecom for review. Email to: sergeydub@dpstele.com Cc: resume1@dpstele.com Subject: Keil Programming Assignment Part I ***Code must be able to compile and run within the provided KEIL IDE before we can evaluate. *** 10. If you have not heard back from us within 2 business days after submitting your project please contact Human Resources at 559-454-1600.
Keil Programming Challenge: Start Up Guide This will provide steps to creating a new project, compiling and running programs within the KEIL IDE. Install the KEIL IDE and C51 compiler if you don t already have it. The link for the executable of the demo is http://www.dpstele.com/jobs/support/ek51v720.exe. The link to the archive with this document and two example projects is http://www.dpstele.com/jobs/support/eng_examples.zip Creating a new project 1. Click on Project - > New Project and type in the project name. 2. It will now ask to select a device for Target Target 1. Look for Generic and select 8051 (All Variants) 3. When asked to add STARTUP.A51, select yes. 4. Before going any further, we will need to setup the serial output. a. Go to the left panel. It should be titled Project Workspace and expand all folders.
b. Right click on Source Group 1 and click on Manage Components You should now be looking at a window with three panels. The furthest one to the right should contain STARTUP.A51. Click on Add Files on the bottom of the screen. c. Go to your Keil folder and find the LIB folder (C:\Keil\LIB). d. Select XBANKING.A51 5. Now start entering your source code by first creating a new file. a. Go to File -> New. This will create a new window called Text.
b. Enter your source code here. c. Be sure to include #include <reg51.h> at the top of your main code. This is used to get input and send output to the serial. d. Also insert the following code in your MAIN routine. This should always be in your source code: SCON = 0x52; // serial port configuration TMOD = 0x20; TCON = 0x40; TH1 = 0xf3; // 2403 baudrate @12mhz This sets up the serial window #1 for input and output. e. Test with the following code (your text should only contain the following): #include<stdio.h> #include <reg51.h> void main (void) { SCON = 0x52; TMOD = 0x20; TCON = 0x40; TH1 = 0xf3; // serial port configuration // 2403 baudrate @12mhz printf("hello World"); } f. Save the text file as a.c document (ex. Main.C) g. Add it to your project by Right clicking on Source Group 1 on the left panel and selecting Add Files To Group. h. Search for the file that you just saved (ex. main.c) and press ok. 6. Compile your code. a. Click on Project -> Rebuild All Target Files. b. The output window on the bottom of the screen should print out how many errors or warning your code contains. If errors is 0 then it will be ok to go ahead and run the code. Modify your source if you have any errors and rebuild again. Watch your code size. The demo has a 2000 byte limit.
c. Once you have rebuilt with 0 errors, click on Debug -> Start/Stop Debug Session.
d. Click on View -> Serial Window #1
e. Now find the Run button. It should be near the top left of the screen. f. Your serial window should now display your text. * Use the following projects as examples before starting your project: HelloWorld : This will echo Hello World to Serial Window #1. Echo : This will ask for a user input and will echo the character back to Serial Window #1. There are other examples that came with the KEIL IDE and can be found in the KEIL folder under C51/Examples.
DPS Telecom is Hiring Programmers! Apply online at: www.dpstele.com/jobs We protect your network like your business depends on it TM