|
|||
Software Engineer
GENERAL SUMMARY
The Software Engineer works across the full stack platform, delivering custom solutions, and application features from concept to implementation and ultimately, end user success. The Software Engineer must be able to write functional/clean/scalable code from scratch, refactor, and maintain existing code with a sharp eye for spotting defects. KEY RESPONSIBILITIES • Develop software solutions by following the software development lifecycle, including: assessing project requirements, conferring with users, studying data usage and work processes, and investigating problem areas. • Write, refactor, debug, implement, and maintain code for custom application development using mainly C# and the .NET framework; follow best practices/patterns/standards to develop .NET applications. • Determine development feasibility by evaluating analysis, problem definition, requirements, solution development, and proposed solutions. • Document and demonstrate solutions by developing documentation, flowcharts, layouts, diagrams, charts, code comments and clear, concise code. • Demonstrate custom developed applications to the requesting end users. • Assist with the design of software applications and work with Software Engineer team and other cross functional teams to meet project goals and milestones. • Support and implement custom software applications and integrations; prepare and install solutions by determining and designing system specifications, standards, and programming. • Assist in documenting and testing of custom software/applications developed; Participate in the testing process through code reviews, analysis, and unit testing. • Solid understanding of the software development lifecycle; Must have knowledge of commonly used software concepts and design, and follows best practice standards. • Is current and stays current, on latest development and programming methodologies. • Abide by department development standards and SOPs. • Provide as needed advanced development support and troubleshooting. • Keep management updated on projects and assigned work. • Relies on experience and judgment to plan and accomplish goals. • Attend all department meetings. • Protect the assets of Pechanga Resort Casino and the Pechanga Tribe. • Other duties as assigned. OTHER QUALIFICATIONS: • Three (3) or more years working with four or more of the following: .NET, C#, Visual Studio, T-SQL, XML, JSON, Network programming, ADO.NET, MS SQL Server, Oracle, PostgreSQL, JavaScript, NodeJS, Swift, LINQ, Razor, Blazor, Git. • Deep understanding of the following software architectural/design patterns is required: MVC, MVVM, SOAP/RESTful APIs, Entity Framework, Unit Tests, Dependency Injection, Continuous Integration/Delivery. • Knowledge and experience in MacOS and iOS platforms preferred. • Knowledge and experience in Android Development preferred. • Understanding and experience of Agile and DevOps methodologies preferred. • Understanding and experience of Big Data eco-systems preferred. • Two (2) or more years of experience in a Gaming environment preferred. • Relies on experience and judgement to plan and accomplish goals. • Works under general supervision. ACCOUNTABILITY: This position has no supervisory responsibilities. Incumbent is responsible for protecting the assets of Pechanga Resort Casino and for maintaining and providing a positive and professional work environment. ________________________________________ QUALIFICATIONS AND GUIDELINES________________________________________ EDUCATION/EXPERIENCE/TRAINING: Bachelor's degree (BA/BS) from four-year college or university from related field is required; and two (2) years’ related experience is required; or an equivalent combination of education and experience is required. COMMUNICATION SKILLS: Ability to read and interpret documents such as safety rules, operating and maintenance instructions, and procedure manuals. Ability to write routine reports and correspondence. The ability to speak effectively before groups of customers or employees of the organization is required as well. MATHEMATICAL SKILLS: Ability to work with mathematical concepts such as probability and statistical inference, and fundamentals of plane and solid geometry and trigonometry. Ability to apply concepts such as fractions, percentages, ratios, and proportions to practical situations. REASONING ABILITY: Ability to define problems, collect data, establish facts, and draw valid conclusions. Ability to interpret an extensive variety of technical instructions in mathematical or diagram form and deal with several abstract and concrete variables. CERTIFICATES, LICENSES, REGISTRATIONS: • Must qualify to obtain and maintain a Class “A” gaming license. SKILLS/ABILITIES: • Long periods of sitting and typing. • Strong work ethic and positive attitude. • Professional demeanor. • Make eye contact while speaking. • Ability to work under stressful situations. • Mentally strong and able to cope with many challenges. • Performs and completes variety of tasks under a fast-paced environment. • Attention to detail. • Excellent troubleshooting and skilled in complex problem solving. • Strong verbal and written communication skills. • Commitment to the success of assigned projects, co-workers and the Company. • Ability to learn new programming languages quickly. • Provide advice, training, and technical support for various projects. ADDITIONAL INFORMATION: • Must be a self-starter who is highly motivated and resourceful. • Must be able to work with a positive attitude in a fast paced and culturally diverse casino environment. • Must be able to take direction and follow through with assigned tasks. • Must be flexible and willing to work nights, weekends and holidays. DISCLAIMER: The above information on this description has been designed to indicate the general nature and level of work performed by Team Members within this classification. It is not designed to contain or be interpreted as a comprehensive inventory of all duties, responsibilities, and qualifications required of Team Members assigned to this job. |