Engineering Presentation for Careers@Directi


Published on

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Engineering Presentation for Careers@Directi

  1. 1. [email_address] (A brief overview) Visit for details
  2. 2. Facts about Products@Directi <ul><li>Some of Our myriad Products and Services - </li></ul><ul><ul><li>crawl over 90 million domains </li></ul></ul><ul><ul><li>provide web services to millions of users </li></ul></ul><ul><ul><li>power 3+ million domains </li></ul></ul><ul><ul><li>run on infrastructure spanning hundreds of distributed servers </li></ul></ul><ul><ul><li>use Petabytes of physical storage space </li></ul></ul><ul><ul><li>serve billions of page views every month </li></ul></ul><ul><ul><li>respond to millions of DNS queries every month </li></ul></ul><ul><ul><li>serve tens of billions of ad units and $150+ million of ad inventory annually </li></ul></ul>
  3. 3. Pushing the Envelope <ul><li>At Directi, we deal with complex challenges needing advanced computing technologies and latest platforms and paradigms. Some of the these include – </li></ul><ul><ul><li>Cassandra  - a distributed database designed by Facebook/Rackspace and others. Currently in use by Twitter and Digg also </li></ul></ul><ul><ul><li>Redis  - an in-memory distributed data structure store - Memcached on steroids! </li></ul></ul><ul><ul><li>Kestrel  - a distributed queue designed by Twitter </li></ul></ul><ul><ul><li>Hadoop Stack - a distributed processing stack used by the likes of Yahoo, Google and IBM </li></ul></ul><ul><ul><li>Titanium  - a cross-OS webkit host for cross-platform desktop app development </li></ul></ul><ul><ul><li>Scala  - a functional + object oriented language that targets the JVM and the CLR, by Martin Ordesky and team. </li></ul></ul>
  4. 4. Building Cutting-edge products <ul><li>Size does matter. Large systems can make simple problems quite challenging to solve. At Directi our services are used by millions of users. We deal with complex deployments, innovative solutions and large scale technical challenges daily. As a part of our engineering team, you may find yourselves working on: </li></ul><ul><ul><li>Communication and Collaboration networks used by millions of global users </li></ul></ul><ul><ul><li>Social Networking software </li></ul></ul><ul><ul><li>Instant messaging and VOIP </li></ul></ul><ul><ul><li>Data miners and crawlers that parse through Terabytes of data </li></ul></ul><ul><ul><li>Context Analysis Engines </li></ul></ul><ul><ul><li>Antispam and Antivirus Solutions </li></ul></ul><ul><ul><li>Large scale Billing and Provisioning platforms </li></ul></ul>
  5. 5. [email_address] <ul><li>Some of the challenges you will deal with: </li></ul><ul><ul><li>Managing globally distributed network applications spread over hundreds of servers </li></ul></ul><ul><ul><li>Managing Communication and Collaboration apps used by millions of global users </li></ul></ul><ul><ul><li>Efficiently generating informative reports from terabytes of data structures </li></ul></ul><ul><ul><li>Building large-scale, low-cost, redundant and fast storage solutions </li></ul></ul><ul><ul><li>Designing complex applications using NIO, multi-threading, and other cutting edge concepts </li></ul></ul><ul><ul><li>Building intuitive interfaces using RIA, Ajax and usability engineering principles </li></ul></ul>
  6. 6. Software Processes @ Directi <ul><li>At Directi, our products and deployments are unique. New releases are made live in the shortest time possible. Our users begin exploring new features immediately upon launch. The feedback cycle is quick. Our unique model requires unique fundamentals. We have borrowed on Agile development practices and use a constantly evolving, lean software development process. Our beliefs manifest themselves in our attitude, development processes, office design, communication etc. We believe - </li></ul><ul><ul><li>Processes evolve vs Processes are fixed and rigid </li></ul></ul><ul><ul><li>Different strokes for different projects vs One size fits all </li></ul></ul><ul><ul><li>Change is welcome vs A Release spec is final </li></ul></ul><ul><ul><li>Small and faster iterations vs Large and longer releases </li></ul></ul>
  7. 7. Tools & Technologies <ul><li>At Directi, we are technology agnostic. We firmly believe that platforms and languages are merely tools, and that a good developer chooses the most appropriate tool for a given job. Below is a laundry list of the tools & technologies that we use at Directi: </li></ul><ul><ul><li>Development </li></ul></ul><ul><ul><ul><li>Languages: Scala, Python, Ruby, Java, C#,, PHP, VC++, C++, Perl, XUL, Javascript, C, Shell </li></ul></ul></ul><ul><ul><ul><li>Web Technologies: HTML 5, CSS, Dojo, jQuery, YUI, Flash, Silverlight </li></ul></ul></ul><ul><ul><ul><li>Frameworks & Libraries: Hibernate, Hibernate Shards, Spring, Apache MINA, Project Grizzly, log4j, XAPool, Poolman </li></ul></ul></ul><ul><ul><ul><li>RDBMS: Postgres, MySQL, Microsft SQL Server, Firebird, SQLite </li></ul></ul></ul><ul><ul><ul><li>NoSql Stores: Redis, Cassandra, Voldemort, Berkeley DB </li></ul></ul></ul>
  8. 8. Tools & Technologies <ul><li>Development (contd …) </li></ul><ul><ul><li>Distributed Caches: Redis, Memcache </li></ul></ul><ul><ul><li>Distributed Queues: Kestrel, RabbitMQ </li></ul></ul><ul><ul><li>Distributed Processing: Hadoop + Pig + ZooKeeper + Mahout </li></ul></ul><ul><ul><li>Cloud Platforms: Amazon Web Services, Google App Engine, Microsoft Azure </li></ul></ul><ul><ul><li>Protocols: XMPP, Jingle, ICE, RTSP, SMTP, POP, IM </li></ul></ul><ul><ul><li>Scripting: Perl, Python, Ruby </li></ul></ul><ul><ul><li>Unit Testing: JUnit, NUnit, MbUnit </li></ul></ul><ul><ul><li>Stress Testing: Jmeter, Tsung, Iozone, Iometer, Bonnie, Bonnie++ </li></ul></ul><ul><ul><li>Functional Testing: Watir, Selenium </li></ul></ul><ul><ul><li>Installers: NSIS </li></ul></ul>
  9. 9. Tools & Technologies <ul><li>Development (contd…) </li></ul><ul><ul><li>Code Repository Tools: Git, SVN, CVS </li></ul></ul><ul><ul><li>Collaboration: JIRA, Confluence’ </li></ul></ul><ul><ul><li>Build Management: Ant, Maven, MsBuild, Nant </li></ul></ul><ul><ul><li>CI: Teamcity, Clover, Hudson </li></ul></ul><ul><ul><li>IDEs: Aptana, Komodo, Eclipse, IntelliJ, Visual Studio, EMacs! </li></ul></ul><ul><li>System Administration </li></ul><ul><ul><li>OS: Linux (Redhat, CentOS), Windows </li></ul></ul><ul><ul><li>Monitoring: Nagios, Cactii, Ganglia </li></ul></ul><ul><ul><li>Config Management: Puppet </li></ul></ul><ul><ul><li>Infrastructure: ServerIron Load Balancers, Cisco ASA Firewall, FC/iSCSI SANs (Comet, Dell) </li></ul></ul>
  10. 10. Tools & Technologies <ul><li>System Administration(contd…) </li></ul><ul><ul><li>Scripting: Bash, Perl, Expect, Python, PHP, VBS, Powershell </li></ul></ul><ul><ul><li>File Systems: Ext3, NTFS, XFS, GFS </li></ul></ul><ul><ul><li>Other: DRBD, Heartbeat, ldirectord, RIS, LVS </li></ul></ul><ul><li>Servers </li></ul><ul><ul><li>App/Web Servers: Tomcat, Resin, IIS, PHP Accelerator, Jetty </li></ul></ul><ul><ul><li>Mail Servers: Qmail, Postfix, Sendmail </li></ul></ul><ul><ul><li>Mailing List: Exmlm, Mailman, Sympa </li></ul></ul><ul><ul><li>Antivirus / Antispam: clamd, Razor, Kaspersky server, Pyzor, Policyd, RBL/DNSBL </li></ul></ul><ul><ul><li>Jabber Servers: eJabberd, Tigase, Openfire </li></ul></ul>
  11. 11. Tools & Technologies <ul><li>Servers (contd…) </li></ul><ul><ul><li>VOIP Servers: Asterisk </li></ul></ul><ul><ul><li>DNS Servers: BIND, Power DNS, DLZ, Microsoft DNS </li></ul></ul><ul><ul><li>Proxy servers: Squid, ISA, Perdition, NGinx, Varnish, Perlbal </li></ul></ul><ul><ul><li>DB Replication: Slony, MSSQL Replication </li></ul></ul><ul><ul><li>FTP Servers: Proftpd, VSftpd </li></ul></ul><ul><ul><li>Virtualization: Xen, VmWare </li></ul></ul><ul><ul><li>Patch Management: WSUS, Yum, up2date </li></ul></ul><ul><li>UI </li></ul><ul><ul><li>UI Prototyping: Balsamiq, Axure </li></ul></ul><ul><ul><li>Design: Photoshop, Flash, Coreldraw </li></ul></ul><ul><ul><li>Web: ECMAscript (actionscript/javascript), RSS, XML, HTML (4.01), XHTML, CSS1.0 & CSS2.1 </li></ul></ul>
  12. 12. Engineering team @Directi <ul><li>Our team consists of high-energy, passionate and motivated individuals. Our recruitment process is designed to challenge and inspire the people who want to work for us. Our engineers include individuals of diverse backgrounds and various age groups, from large multi-national companies and small fledgling enterprises (even self-started ones). </li></ul><ul><li>We are looking for people who will complement what we have today and will help us take Directi to the next level. If you are a self-proclaimed geek with a passion for innovation, a penchant for challenges and a vision of changing the world – give us a shout </li></ul>
  13. 13. | Join us in building a multi-billion dollar Enterprise