Atomic Software, Inc. Software Engineer for iOS and Everything February 2013
Software Engineer for iOS and Everything
Please Note: this is a full-time contract position that may lead to an ongoing full-time position.
– About Atomic
Atomic makes apps for reading. Our mission is to create better ways to read, better ways to learn to read, and better ways for people to connect about reading. We design and build phone, tablet, and web apps that are powered by books. We help publishers develop cloud-based services that provide digital book content to power our apps. And we develop easy-to-use internal systems that produce book content digitally, right from the start. We’ve been working on our own and for Random House, Scholastic, Harcourt, and Pearson, but our best projects are happening today, as you read this, in DUMBO, with a waterfront view of Manhattan and all the Brooklyn Roasting Company coffee that you need.
– The Position
We are expanding a team of innovative product engineers, who can invent, spec, prototype, and build great digital products. Your job at Atomic will be to bring complete digital products to market: Atomic is a small company that builds big, so we need smart people who can start at the beginning of a product and see through every task to completion. For this position, we need great skills at creating and coding for the iPhone and iPad, but we want
engineers who also understand computer science fundamentals, see the beauty in elegant code, and have an appreciation for how every technical decision could affect the end user’s experience.
– Engineering Requirements
• Understand the value of a disciplined engineering practice for the long-term evolution of a digital product.
• Demonstrate experience with software source code revision control systems, especially Git.
• Quickly adapt to a new programming language or platform depending on the needs of the project.
• Commit to understanding the true underlying cause of a software bug instead of more simply treating the symptoms of the bug.
• Understand object-oriented design principles in detail, and readily use them to solve problems.
– Programming Skills
• Excellent skills in Objective-C for iOS programming, with a detailed knowledge of fundamental concepts and design patterns as they are implemented in Objective-C.
• Strong skills in HTML5 tools for mobile development.
• Strong skills in XML, XSL, XPath, DTDs and XML Schemas.
• Detailed knowledge of SQL and databases, especially Oracle, MySQL, and SQLite, and tools like Apple Core Data.
• Familiarity with application servers such as Apache Tomcat and client/server architectures.
• Ability to work on the Unix command line, and a familiarity with terminal-based text editing and shell scripting.
– User Experience Design Background
• Can work on a deadline to wireframe a series of related screens using tools like Balsamiq Mockups.
• Can use paper prototypes and visual wireframes to understand and communicate how a user would accomplish different tasks.
• Can take the graphical work of designers and implement it functionally, making adjustments
in tools like Photoshop, Fireworks, or the GIMP when needed.
– Technical Skill Summary
• Objective-C, everything from the runtime internals to using Xcode
• Source code revision control systems, especially Git
• HTML5, Javascript, CSS
• XML, XSL, XPath, DTDs, XML Schemas
• Computer science fundamentals
• Object-oriented design principles
• Unix command line
• Application servers and client/server experience
• Apple Core Data
• SQL, Oracle, MySQL, and SQLite databases
• Balsamiq Mockups
– Conceptual Skills
You must be able to:
• Combine technical expertise with the ability to speak your mind, think critically, and find the simpler, more elegant way to get the job done.
• Take pride in your work and be able to explain to anyone — client, engineer, or executive — exactly why it’s great.
• Recognize when you could have done a better job and take action to improve things.
• Listen to the end-user or client thoughtfully, address the user’s concerns, and respond with what courses of action are available or preferred.
• Be brilliant within a team of other brilliant people.
These conceptual skills are not after-thoughts: we consider them as much part of the job description as any of the design or engineering skills listed above.
– To Apply
Send a resume and your favorite kind of cookie (we eat a lot of cookies here) to
aisforatomic@atomicsoftware. com with the subject line “Software Engineer for iOS and Everything”.