Summary
The person in this position is responsible for development, designing, testing, coding and integrating software products. Provides support to and works alongside other engineers to create innovative products. Provides technical mentoring and guidance to junior engineers and is able to work very quickly and effectively in a wide range of applications, languages and technologies. Is capable of learning new technologies, development environments and methodologies quickly. Proficient in operating system concepts (e.g. Linux and Unix especially, but OS concepts in general), serial and network protocols, object oriented design and development including C++ and other object oriented languages. A team player with a strong desire and capability to excel in software development, problem-solving, the ideal candidate will possess a deep commitment to quality and a propensity to innovate or be creative.

Duties

Utilizes technical knowledge to write and complete software tasks and projects Researches new technologies and incorporates them into new systems and products Takes initiative in leading projects, designing innovative and advanced/creative solutions to difficult engineering problems and collaborating with others Tests, integrates, writes, troubleshoots, and debugs software applications Responsible for the architecture and implementation of critical software components and games; uses company standards and applies design principals and patterns to develop robust software Works closely with other engineers to provide guidance and assistance in the areas of software architecture, coding standards, and system related issues May act as team mentor in a multi-person development team

Training AND/OR Experience:

Five or more years of professional experience in a software development team At least 2 years of experience as a key contributor in a team or on a product Experience with Linux/Unix Experience with, and understanding of networking and/or serial communications protocols Experience with either software engineering/embedded software/computer/electrical engineer experience with software exposure

Knowledge / Skills / Abilities:
Ability to work well with others in a team environment Strong working knowledge of Software Development Lifecycle Strong working knowledge of operating systems Strong knowledge of tools to test software applications/systems Strong working knowledge of development/modeling tools Ability to lead and manage subordinates Strong multi-tasking skills Enjoy working in a creative environment Excellent communication skills Must be able to obtain and hold a Nevada Gaming Card
Education:
Bachelor's degree required, preferably BSEE, BSCE, BSEET, or BSCS or equivalent work experience. Master's degree preferred
Physical Requirements:
Sedentary

Interested candidates can contact me at ajayaramanbaskaran@ballytech.com